Java

Random()을 사용하여 가위바위보 게임 만들어보기

에어팟맥스 2022. 6. 15. 22:05

=== 컴퓨터가 1 또는 2 또는 3 중에 랜덤한 숫자를 생성해주어야 한다. ===
  -- 만약 컴퓨터가 생성한 랜덤한 숫자가 1일 경우 컴퓨터가 가위를 냈다 라고 본다.
  -- 만약 컴퓨터가 생성한 랜덤한 숫자가 2일 경우 컴퓨터가 바위를 냈다 라고 본다.
  -- 만약 컴퓨터가 생성한 랜덤한 숫자가 3일 경우 컴퓨터가 보를 냈다 라고 본다.
 
  ============ >> 메뉴 << ============
   1. 가위       2. 바위     3. 보       4. 게임종료
  =================================
  >> 메뉴번호를 선택하세요 => 
 
  [경고] 메뉴에 없는 번호 입니다!!
 
  [게임결과] 사용자 님이 이겼습니다 :)
  [게임결과] 비겼습니다!
  [게임결과] 사용자 님이 졌습니다 :(
 
  == 프로그램 종료 ==
 
  >> 또 하시겠습니까? [Y/N]
 
  [경고] Y 또는 N 만 입력가능합니다.
 
  >> 메뉴번호를 선택하세요 => 4. 게임종료


  [게임종료] 안녕히 가세요

 

	public static void main(String[] args) {
		
		Random rnd = new Random();
		Scanner sc = new Scanner(System.in);
		String str_input = "";
		
		do {
			// -- 컴퓨터가 0 또는 1 중에 랜덤한 숫자를 생성해주어야 한다. --
			// 랜덤한 정수 = rnd.nextInt( 마지막수 - 처음수 + 1) + 처음 수;
			
			int pc_no = rnd.nextInt(3 - 1 + 1) + 1;
			
			System.out.println("=========== >> 메뉴 << ===========\n"
								+ "1. 가위	2. 바위	3. 보	4. 게임종료\n"
								+ "=================================");
			System.out.print("\n>> 메뉴번호를 선택하세요 => ");
			
			str_input = sc.nextLine();
			
			
			// 메뉴에 없는 것을 입력한 경우 
			if( !"1".equals(str_input) &&
				!"2".equals(str_input) &&
				!"3".equals(str_input) &&
				!"4".equals(str_input)) {
					System.out.println("\n[경고] 메뉴에 없는 번호 입니다!!\n");
			}
			else if(!"4".equals(str_input)) { // 메뉴중에 1 또는 2 또는 3을 입력한 경우
				
				String msg = "";
				
				// 사용자가 이기는 경우
				if( "1".equals(str_input) && pc_no==3 || 
					"2".equals(str_input) && pc_no==1 ||
					"3".equals(str_input) && pc_no==2) {
					msg = "\n[게임결과] 사용자 님이 이겼습니다 :)\n";
				}
			
				// 사용자가 지는 경우
				else if("1".equals(str_input) && pc_no==2 ||
						"2".equals(str_input) && pc_no==3 ||
						"3".equals(str_input) && pc_no==1){
					msg = "\n[게임결과] 사용자 님이 졌습니다 :(\n";
				}
				// 비긴 경우	
				else {
					msg = "\n[게임결과] 비겼습니다\n";
				}
				System.out.println(msg);
			} 
			else { // 메뉴중에 4를 입력한 경우
				System.out.println("\n[게임종료] 안녕히 가세요");
			}
			
			
		} while ( !( "4".contentEquals(str_input)));
		
		
		sc.close();
		System.out.println("\n== 프로그램 종료 ==");

	} // end of main()

'Java' 카테고리의 다른 글

배열  (0) 2022.06.15
Random()을 사용하여 숫자맞추기 게임 만들어보기  (0) 2022.06.15
Random() 을 사용하여 홀짝 게임 만들어보기  (0) 2022.06.15
랜덤한 값을 뽑아내기  (0) 2022.06.15
while , do ~ while()  (0) 2022.06.15