Random Game (boolean, switch, while, if, break)

Liberte Koo·2022년 12월 6일

Java

목록 보기
8/13
post-thumbnail

베스킨라빈스 게임

public void br31() {
	Scanner sc = new Scanner(System.in);
	Random r = new Random(); // while안에 넣으면 계속 랜덤값이 최소화되서 무한으로 게임을 한다.
	boolean bool = true;
	int win = 0; //승리기록은 while 바깥에 선언해놔야한다. 아니면 계속 초기화되므로
	int lose = 0; 
	System.out.println("Baskin Robbins 31 Game");
	while (bool) {
		System.out.println("1. Game Start");
		System.out.println("2. Game Score");
		System.out.println("3. Game End");
		System.out.println("선택 > ");
		int sel = sc.nextInt();
		switch (sel) {
		case 1:
			System.out.println("<<Game Start>>");
			int num = 0;
			while (true) {
				System.out.println("<<Your Turn>>");
				int userNum=0;
				while(true) {
					System.out.println("Input Number :");
					userNum = sc.nextInt();
					if(0<userNum && userNum<4) {
						break;
					}else {
						System.out.println("1~3 사이값을 입력해주세요");
					}
				}
				for (int i = 0; i < userNum; i++) {
					num++;
					System.out.println(num + "!");
					if(num==31) {
						lose++;
						System.out.println("패배!!");
						break; //번호 출력을 나가는 break;
					}
				}
				if(num==31) {
					System.out.println("패배 후 while 나가는 if");
					break;//게임반복(while)을 나가는 break;
				}
				System.out.println("<<Computer Turn>>");
				int comNum = r.nextInt(3) + 1;
				for (int i = 0; i < comNum; i++) {
					num++;
					System.out.println(num + "!");
					if(num==31) {
						win++;
						System.out.println("승리!");
						break;//번호 출력을 나가는 break;
					}
				}
				if(num==31) {
					System.out.println("승리 후 while 나가는 if");
					break;//게임반복(while)을 나가는 break;
				}
			}
			break;//switch 나가는 break;
		case 2:
			System.out.println("승리 : "+win);
			System.out.println("패배 : "+lose);
			break;
		case 3: 
			System.out.println("Bye~");
			bool=false; //전체 메뉴 반복이 끝나도록
			break;
		}//switch 종료지점
	}//전체 메뉴 반복 while 종료 지점
}//메소드 종료지점코드를 입력하세요

profile
A previous generalist who strives to become a genuine Specialist.

0개의 댓글