문제
숨겨진 카드의 수를 맞추는 게임을 만들어보자. 0~99까지의 임의의 수를 가진 카드를 한 장 숨기고 이 카드의 수를 맞추는 게임이다. 아래의 화면과 같이 카드 속의 수가 77인 경우 수를 맞추는 사람이 55라고 입력하면 " 더 높게 " , 다시70을 입력하면 " 더 높게 " 라는 식으로 범위를 좁혀가면서 수를 맞춘다. 게임을 반복하기 위해 y/n을 묻고, n인 경우 종료된다.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 | Scanner Scanner = new Scanner(System.in); Random Random = new Random(); int score = 0; // user 값 서언 int R = 0; // Random값 선언 int count = 1; // 횟수 체크 boolean check = true;// while문을 동작시키기 위한 값 while (check) { // while : 조건이 맞을경우에만 실행된다.
// boolean 으로 true 지정 true는 참 이므로 무조건 반복한다.
if (count == 1) { // 게임 다시시작 하였을때 돌아갑니다. R = Random.nextInt(100); // 0~99 랜덤 숫자 지정 System.out.println("수를 결정하였습니다. 맞추어 보세요"); System.out.println("0~99 , (답 : " + R + ")"); } System.out.print(count + ">>"); score = Scanner.nextInt(); // user 점수 입력란 if (R > score) {
System.out.println("더 높게"); count++; // 횟수 증가 (1) } else if (R < score) {
System.out.println("더 낮게"); count++;// 횟수 증가 (2) } else {
System.out.println("맞았습니다."); System.out.print("다시하시겠습니까?(y/n)"); String text = Scanner.next(); // user가 다시하기/종료 입력란 if (text.equals("y")) { // y 눌렀을떄 게임 다시시작 check = true; } else { // n 눌렀을떄 게임 종료 check = false; } count = 1; // 되돌아가기 처음 While문으로 } } } |
'JAVA > 조건문 문제' 카테고리의 다른 글
if문(환율 계산)하기. (0) | 2018.06.16 |
---|---|
if문(십의 자리와 1의 자리가 같은지 판별하기) (1) | 2018.06.16 |
if문(1~10까지 합 구하기) (0) | 2018.06.16 |
for문(별 모양 그리기) (0) | 2018.06.16 |
for(구구단) 구하기. (0) | 2018.06.16 |