1. enum을 사용하지 않고 만들기
#include <iostream>
using namespace std;
int main()
{
srand(unsigned int(time(0)));
while (true)
{
int rcp;
cout << "가위(0), 바위(1), 보(2) 중 하나를 선택하세요." << endl;
cout << "> ";
cin >> rcp;
int atk = rand() % 3;
switch (rcp)
{
case 0:
if (atk == 0)
cout << "비김" << endl << "상대방의 선택 : " << atk << endl << endl;
else if (atk == 1)
cout << "짐" << endl << "상대방의 선택 : " << atk << endl << endl;
else
cout << "이김" << endl << "상대방의 선택 : " << atk << endl << endl;
break;
case 1:
if (atk == 0)
cout << "이김" << endl << "상대방의 선택 : " << atk << endl << endl;
else if (atk == 1)
cout << "비김" << endl << "상대방의 선택 : " << atk << endl << endl;
else
cout << "짐" << endl << "상대방의 선택 : " << atk << endl << endl;
break;
case 2:
if (atk == 0)
cout << "짐" << endl << "상대방의 선택 : " << atk << endl << endl;
else if (atk == 1)
cout << "이김" << endl << "상대방의 선택 : " << atk << endl << endl;
else
cout << "비김" << endl << "상대방의 선택 : " << atk << endl << endl;
break;
default:
cout << "유효하지 않은 숫자를 입력했습니다." << endl << endl;
break;
}
}
}
2. enum을 사용하여 만들기
#include <iostream>
using namespace std;
enum RCP
{
RCP_SCISSORS = 0,
RCP_ROCK = 1,
RCP_PAPER = 2,
};
int main()
{
srand(unsigned int(time(0)));
while (true)
{
int rcp;
cout << "가위(0), 바위(1), 보(2) 중 하나를 선택하세요." << endl;
cout << "> ";
cin >> rcp;
int atk = rand() % 3;
switch (rcp)
{
case RCP_SCISSORS:
if (atk == RCP_SCISSORS)
cout << "비김" << endl << "상대방의 선택 : " << atk << endl << endl;
else if (atk == RCP_ROCK)
cout << "짐" << endl << "상대방의 선택 : " << atk << endl << endl;
else
cout << "이김" << endl << "상대방의 선택 : " << atk << endl << endl;
break;
case RCP_ROCK:
if (atk == RCP_SCISSORS)
cout << "이김" << endl << "상대방의 선택 : " << atk << endl << endl;
else if (atk == RCP_ROCK)
cout << "비김" << endl << "상대방의 선택 : " << atk << endl << endl;
else
cout << "짐" << endl << "상대방의 선택 : " << atk << endl << endl;
break;
case RCP_PAPER:
if (atk == RCP_SCISSORS)
cout << "짐" << endl << "상대방의 선택 : " << atk << endl << endl;
else if (atk == RCP_ROCK)
cout << "이김" << endl << "상대방의 선택 : " << atk << endl << endl;
else
cout << "비김" << endl << "상대방의 선택 : " << atk << endl << endl;
break;
default:
cout << "유효하지 않은 숫자를 입력했습니다." << endl << endl;
break;
}
}
}
'복습' 카테고리의 다른 글
함수 객체 ( functor ; 펑터 ) (0) | 2023.10.06 |
---|---|
함수 포인터 (0) | 2023.10.06 |
우선순위 큐 (priority_queue) (1) | 2023.10.05 |
산술연산 시 주의점 (0) | 2023.08.07 |
16진법과 2진법의 관계 (0) | 2023.08.07 |