IT/Java

자바 숫자맞추기 up down 게임(while문 무한루프, break, Scanner, Math.random 사용예제)

노마드오브 2018. 7. 9. 23:19

// 0 에서 99 사이의 랜덤 숫자 맞추기


Scanner scanner = new Scanner(System.in);


String yN = "";


while (true) {


if (yN.equals("n")) {  // n일 경우, while문을 빠져나간다

break;

}


int number = (int) (Math.random() * 100) ; // 랜덤 숫자 0-99

System.out.print("수를 결정하였습니다.\n힌트:");

System.out.print((number % 2 == 1)?"홀수":"짝수"); 

System.out.println("입니다. 맞추어보세요.\n범위:0-99");


while (true) { // 숫자를 맞출 때까지 무한루프

int myNum = scanner.nextInt();

if (myNum >= 0 && myNum <= 99) {

if (myNum > number) {

System.out.println("더 낮게");

} else if (myNum < number) {

System.out.println("더 높게");

} else {

System.out.println("맞았습니다. 다시 하시겠습니까?(y/n)");

yN = scanner.next(); // 계속 하시겠습니까? y or n


if (yN.equals("n")) {

System.out.println("종료합니다");

}

break;  // 숫자를 맞췄으므로, y or n 관계없이 숫자 맞추기 루프는 빠져나간다

}

} else {

System.out.println("유효하지 않은 수입니다. 다시 입력하세요");

}

}

}



scanner.close();