03. 가위-바위-보 게임 — 웹툰PD 지망생 : 정민재
03. 가위-바위-보 게임
●/섹션 2. 코드의 흐름 제어

03. 가위-바위-보 게임

728x90

 

첫 번째 방법

using System;

namespace Csharp
{
    class Program
    {
        static void Main(string[] args)
        {
            //0:가위 1:바위 2:보

            Random rand = new Random();

            //ai가 고르는 0 ~ 2사이의 랜덤 값
            int aiChoice = rand.Next(0, 3);

            int choice = Convert.ToInt32(Console.ReadLine());

            switch(choice)
            {
                case 0:
                    Console.WriteLine("당신의 선택은 가위입니다");
                    break;
                case 1:
                    Console.WriteLine("당신의 선택은 바위입니다.");
                    break;
                case 2:
                    Console.WriteLine("당신의 선택은 보입니다.");
                    break;
            }

            switch (aiChoice)
            {
                case 0:
                    Console.WriteLine("컴퓨터의 선택은 가위입니다");
                    break;
                case 1:
                    Console.WriteLine("컴퓨터의 선택은 바위입니다.");
                    break;
                case 2:
                    Console.WriteLine("컴퓨터의 선택은 보입니다.");
                    break;
            }

            if (choice == 0)
            {
                if (aiChoice == 0)
                {
                    Console.WriteLine("무승부입니다");
                }
                else if(aiChoice == 1)
                {
                    Console.WriteLine("졌습니다");
                }
                else
                {
                    Console.WriteLine("이겼습니다");
                }
            }
            else if (choice == 1)
            {
                if (aiChoice == 0)
                {
                    Console.WriteLine("이겼습니다");
                }
                else if (aiChoice == 1)
                {
                    Console.WriteLine("무승부입니다");
                }
                else
                {
                    Console.WriteLine("졌습니다");
                }
            }
            else
            {
                if (aiChoice == 0)
                {
                    Console.WriteLine("졌습니다");
                }
                else if (aiChoice == 1)
                {
                    Console.WriteLine("이겼습니다");
                }
                else
                {
                    Console.WriteLine("무승부입니다");
                }
            }
        }
    }
}

 

 

두 번째 방법

using System;

namespace Csharp
{
    class Program
    {
        static void Main(string[] args)
        {
            //0:가위 1:바위 2:보

            Random rand = new Random();

            //ai가 고르는 0 ~ 2사이의 랜덤 값
            int aiChoice = rand.Next(0, 3);

            int choice = Convert.ToInt32(Console.ReadLine());

            switch (choice)
            {
                case 0:
                    Console.WriteLine("당신의 선택은 가위입니다");
                    break;
                case 1:
                    Console.WriteLine("당신의 선택은 바위입니다.");
                    break;
                case 2:
                    Console.WriteLine("당신의 선택은 보입니다.");
                    break;
            }

            switch (aiChoice)
            {
                case 0:
                    Console.WriteLine("컴퓨터의 선택은 가위입니다");
                    break;
                case 1:
                    Console.WriteLine("컴퓨터의 선택은 바위입니다.");
                    break;
                case 2:
                    Console.WriteLine("컴퓨터의 선택은 보입니다.");
                    break;
            }

            if (choice == aiChoice)
            {
                Console.WriteLine("무승부입니다.");
            }
            else if (choice == 0 && aiChoice == 2)
            {
                Console.WriteLine("승리입니다.");
            }
            else if (choice == 1 && aiChoice == 0)
            {
                Console.WriteLine("승리입니다.");
            }
            else if (choice == 2 && aiChoice == 1)
            {
                Console.WriteLine("승리입니다.");
            }
            else
            {
                Console.WriteLine("패배입니다.");
            }
        }
    }
}

728x90

' > 섹션 2. 코드의 흐름 제어' 카테고리의 다른 글

08. 함수(ref)  (0) 2021.07.10
07.break, continue(흐름 제어)  (0) 2021.07.10
06. for  (0) 2021.07.10
05. while  (0) 2021.07.10
04. 상수와 열거형(하드코딩 교정)  (0) 2021.07.10