

import java.util.Random;
import java.util.Scanner;
/* 숫자 맞추기 게임 */
public class Blog {
public static void main(String[] args) {
new Byul();
}
}
class Byul {
Scanner sc;
Random rd;
Byul() {
sc = new Scanner(System.in); // 스캐너 생성
rd = new Random(); // 난수 도구 생성
System.out.println(getTitle()); // 타이틀 출력 함수 호출
controller(); // 아래 컨트롤러 함수 호출
sc.close(); // 스캐너 종료
}
void controller() {
if (input() == 1) // 사용자 입력값 확인 후
main(); // 아래 메인 함수 호출
}
void main() {
int number = getNumber(); // 난수 생성 함수 호출, 난수 값 number에 저장
boolean isWon = false; // 게임 승패 결과에 따라 행동 제어용 boolean
for (int i = 0; i < 10; i++) { // 기회 10번 -> 반복문 10바퀴
System.out.println("숫자를 입력해주세요 : ");
int input = input(); // 입력값 저장
if (input == number) { // 미리 저장된 난수와 입력값 비교
System.out.println("일치");
isWon = true; // 일치 시 boolean 값 변경 밑 프로그램 종료
break;
} else if (input > number) {
System.out.println("Down ===> " + (9 - i) + "번 남아 있습니다."); // 입력값이 저장된 수 보다 큰 경우
} else {
System.out.println("Up ====> " + (9 - i) + "번 남아 있습니다."); // 일치, 큰 경우 제외의 경우의 수는 무조건 작은 경우다
}
}
if (!isWon)
System.out.println("숫자: " + number); // 10번 기회 동안 숫자를 맞추지 못하면 정답을 표시
}
String getTitle() {
StringBuilder sb = new StringBuilder();
sb.append("************************\n\n");
sb.append(" 숫자 맞추기 v 1.0\n\n");
sb.append("\tdesigned by Byul\n\n");
sb.append("************************\n");
sb.append("[ 게임시작 1 ]");
sb.append("[ 게임종료 2 ]");
return sb.toString();
}
int getNumber() {
return rd.nextInt(100) + 1;
}
int input() {
return sc.nextInt();
}
}
댓글
댓글 쓰기