상수 (const)
ex1)
namespace CSharp
{
class Program
{
static void Main(string[] args)
{
const int ROCK = 1;
const int PAPER = 2;
const int SCISSORS = 0;
Random rand = new Random();
int aiChoice = rand.Next(0, 3);//0~2 사이의 랜덤 값
int choice = Convert.ToInt32(Console.ReadLine());
switch (choice)
{
case SCISSORS:
Console.WriteLine("당신의 선택은 가위입니다.");
break;
case ROCK:
Console.WriteLine("당신의 선택은 바위입니다.");
break;
case PAPER:
Console.WriteLine("당신의 선택은 보입니다.");
break;
}
switch (aiChoice)
{
case SCISSORS:
Console.WriteLine("AI의 선택은 가위입니다.");
break;
case ROCK:
Console.WriteLine("AI의 선택은 바위입니다.");
break;
case PAPER:
Console.WriteLine("AI의 선택은 보입니다.");
break;
}
// 승리 무승부 패배
if (choice == aiChoice)
{
Console.WriteLine("무승부입니다.");
}
else if (choice == ROCK && aiChoice == SCISSORS)
{
Console.WriteLine("승리입니다.");
}
else if (choice == SCISSORS && aiChoice == PAPER)
{
Console.WriteLine("승리입니다.");
}
else if (choice == PAPER && aiChoice == ROCK)
{
Console.WriteLine("승리입니다.");
}
else
{
Console.WriteLine("패배입니다.");
}
}
}
}
열거형 (enum)
ex2)
namespace CSharp
{
class Program
{
enum Choice
{
SCISSORS, ROCK, PAPER
}
static void Main(string[] args)
{
Random rand = new Random();
int aiChoice = rand.Next(0, 3);//0~2 사이의 랜덤 값
int choice = Convert.ToInt32(Console.ReadLine());
switch (choice)
{
case (int)Choice.SCISSORS:
Console.WriteLine("당신의 선택은 가위입니다.");
break;
case (int)Choice.ROCK:
Console.WriteLine("당신의 선택은 바위입니다.");
break;
case (int)Choice.PAPER:
Console.WriteLine("당신의 선택은 보입니다.");
break;
}
switch (aiChoice)
{
case (int)Choice.SCISSORS:
Console.WriteLine("AI의 선택은 가위입니다.");
break;
case (int)Choice.ROCK:
Console.WriteLine("AI의 선택은 바위입니다.");
break;
case (int)Choice.PAPER:
Console.WriteLine("AI의 선택은 보입니다.");
break;
}
// 승리 무승부 패배
if (choice == aiChoice)
{
Console.WriteLine("무승부입니다.");
}
else if (choice == (int)Choice.ROCK && aiChoice == (int)Choice.SCISSORS)
{
Console.WriteLine("승리입니다.");
}
else if (choice == (int)Choice.SCISSORS && aiChoice == (int)Choice.PAPER)
{
Console.WriteLine("승리입니다.");
}
else if (choice == (int)Choice.PAPER && aiChoice == (int)Choice.ROCK)
{
Console.WriteLine("승리입니다.");
}
else
{
Console.WriteLine("패배입니다.");
}
}
}
}
'C#' 카테고리의 다른 글
For문 (0) | 2023.07.02 |
---|---|
While(반복문) (0) | 2023.07.02 |
가위 바위 보 게임!! (0) | 2023.07.02 |
분기문 (If/else if/else/switch/ 삼항연산자) (0) | 2023.07.02 |
논리연산 (0) | 2023.07.01 |