본문 바로가기
개발/JAVA

[JAVA] Random 클래스를 이용한 가위바위보

by 윤J 2022. 10. 18.

“가위/바위/보“ 게임을 난수 발생기 클래스 Random을 이용해서 구현하여 보자. 사용자와 컴퓨터가 대결하는 것으로 하고 컴퓨터는 0부터 2까지의 난수 를 발생한다. 0은 가위, 1은 바위, 2는 보로 간주하고 사용자가 입력한 수를 비교해서 승부를 결정하시오. 

<실행 결과>

하나를 선택하시오: 가위(0), 바위(1), 보(2): 1

컴퓨터는 바위를 냈습니다.

비겼습니다.

import java.util.Scanner;
import java.util.Random;

public class problem2 {
	public static void main (String [] args) {
		
		System.out.print("하나를 선택하시오: 가위(0), 바위(1), 보(2): ");
		Scanner scanner = new Scanner(System.in);
		int num = scanner.nextInt();
		
		int computer = (int)(Math.random()*2);
		
		switch(computer) {
		case 0: System.out.println("컴퓨터는 가위를 냈습니다."); break;
		case 1: System.out.println("컴퓨터는 바위를 냈습니다."); break;
		case 2: System.out.println("컴퓨터는 보를 냈습니다."); break;
		}
		
		if(num == computer) {
			System.out.println("비겼습니다.");
		}
		else if((computer == 0 && num == 1) || (computer == 1 && num == 2) || (computer == 2 && num == 0)) {
			System.out.println("이겼습니다.");
		}
		else System.out.println("졌습니다.");
	}
}

 

- Math.random() >> 0.0 이상 1.0 미만의 임의의 double 값을 반환

 (int)Math.ramdom()*100 + 1 >> 1~100 사이의 랜덤 정수 반환

댓글