반응형
숫자맞추기 게임
1~100사이의 난수를 발생하여 맞추는 게임
[실행결과]
숫자 입력 : 50
50보다 큽니다
숫자 입력 : 90
90보다 작습니다
...
숫자 입력 : 87
딩동뎅 xx번만에 맞추셨습니다
continue(Y/N) : n
프로그램을 종료합니다
더보기
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
public class NumberGame {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
int randomNum;
int round = 0;
String yn;
System.out.println(" * 숫자맞추기 게임");
System.out.println("1~100사이의 난수를 발생하여 맞추는 게임");
System.out.println();
randomNum = (int) (Math.random() * 100 + 1); // 난수 1 ~ 100
for (; true;) { // 무한반복문
// = while(true)
// = for(;;)
System.out.println("답 : " + randomNum); // 지우기
round++;
System.out.print("숫자 입력 : ");
int userInput = Integer.parseInt(br.readLine());
if (userInput > randomNum) {
System.out.println(userInput + "보다 작습니다.");
}
else if (userInput < randomNum) {
System.out.println(userInput + "보다 큽니다.");
}
else {
System.out.println("딩동댕 " + round + "번만에 맞추셨습니다.");
System.out.println("=============================");
round = 0;
// 계속? Y/N
while (true) {
System.out.print("Continue(Y/N) : ");
yn = br.readLine();
System.out.println();
if (yn.equals("n") || yn.equals("N") || yn.equals("Y") || yn.equals("y")) {
break; // Y 또는 N 이 입력되었으므로 while 무한루프 종료.
}
}
if (yn.equals("n") || yn.equals("N")) {
System.out.println("게임을 종료합니다.");
break; // 게임 종료
}
System.out.println("게임을 계속합니다.");
randomNum = (int) (Math.random() * 100 + 1); // randomNum 재생성
}
} // for 반복문
}
}
반응형
'Dev > Java' 카테고리의 다른 글
Java - NotePad (Swing) (0) | 2020.10.22 |
---|---|
Java 예제 - 로또 번호 만들기 ( random, array, nested For loop) (0) | 2020.09.10 |
Java 가위바위보 게임 ( Math.random(), System.in.read() ) (0) | 2020.09.08 |
Java - BufferReader, InputStreamReader 이용 입력 예제 (0) | 2020.09.04 |
Java - 주차관리 예제 (0) | 2020.08.14 |