/*
조건 1. 비밀번호는 3자리로 한다.
2. 비밀번호를 1자리씩 입력하게 한다. (1개 입력하고 엔터 누르는 식)
3. 비밀번호가 틀리면 처음부터 다시 입력하게 한다.
4. 비밀번호가 맞으면 성공 메시지를 출력한다.
*/
import java.util.Scanner;
class Door {
//field
private int password;
//constractor
public Door() {
this.setPassword(new java.util.Random().nextInt(1000));
}
//getter setter
public void setPassword(int password) {
this.password = password;
}
public int getPassword() {
return this.password;
}
//methed
public boolean check(int password) {
if(password == this.getPassword()) {
return true;
} else {
return false;
}
}
}
public class Main {
public static void main(String[] args) {
Door door = new Door();
Scanner sc = new Scanner(System.in);
String ans = "";
int intAns = 0;
while (true) {
ans = "";
try {
for (int i = 0; i < 3; i++) {
System.out.print("숫자를 1개 입력해주세요:");
ans += sc.next();
}
} catch (Exception e) { }
try {
intAns = Integer.parseInt(ans);
} catch (Exception e) {
System.err.println(e.toString());
System.out.println("숫자를 정확히 입력해주세요");
continue;
}
if (door.check(intAns)) {
System.out.println("정답입니다!");
break;
}
System.out.println((door.getPassword() - intAns) > 0 ? "틀렸습니다. 더 높은 숫자로 다시 입력해주세요":"틀렸습니다. 더 낮은 숫자로 다시 입력해주세요");
}
}
}
풀이 작성