UpDownGame 클래스
public class UpDownGame {
private int rand;
private int count;
private Scanner sc;
public UpDownGame() {
rand = (int) (Math.random() * 100 + 1);
sc = new Scanner(System.in);
}
public int input() {
try {
count++;
System.out.println("입력 >>> ");
int n = sc.nextInt();
if(n < 1 || n > 100) {
throw new RuntimeException("1 ~ 100 사이 정수만 입력할 수 있습니다.");
}
return n;
} catch (InputMismatchException e) {
System.out.println("정수만 입력할 수 있습니다.");
sc.next();
input();
} catch(RuntimeException e) {
System.out.println(e.getMessage());
input();
}
return 0;
}
public void play() {
while(true) {
int n = input();
if(n < rand) {
System.out.println("Up!");
} else if (n > rand) {
System.out.println("Down!");
} else {
System.out.println(rand + "정답입니다. " + count + "번만에 정답");
break;
}
}
}
}
Main 클래스
public class Main {
public static void main(String[] args) {
new UpDownGame().play();
}
}