본문 바로가기

코딩

가위바위보 게임

#include<iostream>
using namespace std;
int main()
{
	int input, computer = 0;

	while (true)
	{
		cout << "가위 : 0 , 바위 : 1 , 보 : 2" << endl;
		cout << "입력하세요 -> ";
		cin >> input;

		if (input == computer)
			cout << "비겼다." << endl;
		else if (input == 0)
		{
			if (computer == 1)
				cout << "졌다" << endl;
			else
				cout << "이겼다." << endl;
		}
		else if (input == 1)
		{
			if (computer == 0)
				cout << "이겼다." << endl;
			else
				cout << "졌다." << endl;
		}
		else
		{
			if (computer == 0)
				cout << "졌다." << endl;
			else
				cout << "이겼다." << endl;
		}

		cout << "내가 낸 값 : " << input << endl;
		cout << "컴퓨터가 낸 값 : " << computer++ << endl << endl;

		if (computer > 2)
			computer = 0;
	}
}

 

+ 랜덤함수, 조건문 if 갯수 줄이기

#include <iostream>
#include <time.h>
using namespace std;

int main()
{
	int input, cum;
	while (true)
	{
		cout << "가위0, 바위1, 보2 --> ";
		cin >> input;
		cum = rand() % 3;
		cout << "내가 낸 수 : " << input << endl;
		cout << "컴퓨터가 낸 수 : " << cum << endl;

		//이기는 경우(input - cum이 1나오는 경우 / input = 0, cum = 2 경우)
		//컴퓨터 : 가위0 바위1 보2
		//나	 : 바위1 보2   가위0

		//지는 경우(그 외 나머지 경우들)
		//컴퓨터 : 가위0 바위1 보2
		//나	 : 보2	 가위0 바위1

		//비기는 경우(input과 cum이 같을 떄)
		//컴퓨터 : 가위0 바위1 보2
		//나	 : 가위0 바위1 보2

		if (input == cum)
		{
			cout << "비겼다." << endl;
		}
		else if (input - cum == 1)
		{
			cout << "이겼다." << endl;
		}
		else if (input == 0 && cum == 2)
		{
			cout << "이겼다." << endl;
		}
		else
		{
			cout << "졌다" << endl;
		}
		cout << endl;
	}
}

'코딩' 카테고리의 다른 글

별찍기 / 숫자야구게임  (0) 2022.10.18
로또번호 자동 생성기  (2) 2022.10.15
숫자 유추해서 맞춰보기  (0) 2022.10.12
계산기 만들기  (0) 2022.10.12
자료형 / 연산자 우선순위  (0) 2022.10.12