백지부터 시작하는 이세계 코딩 생활

조건문, 스무고개 만들기 본문

JAVA/조건문

조건문, 스무고개 만들기

조아덕 2020. 8. 8. 21:34
package project0427;

import java.util.Random;

import java.util.Scanner;

public class HW0428 {

         public static void main(String[] args) {

                 // TODO Auto-generated method stub

                 // Math.random()

                 // Random 클래스를 이용 (난수발생기), 범위지정필요.

                 

                 /*<Order>
                 * 정답이면 빙고 메세지 프린트
                 * 오답이면 큰수인지 작은수인지 알려주기
                 * 예외처리 --> 재입력 시행
                 * --- 한 세트당 중간 메세지 프린트 ---
                 * 기회는 6번으로 셋팅
                 * 마지막 프린트, y or n 만 입력받기(문자만 인식되기)
                 */



                 

                 //선택지 관련 변수

                 //int YES, yes, Yes, yEs, yeS, y, Y = 1;

                 //int NO, no, nO, n, N = 2;

                 

                 int Input = 0;

                 int cnt = 1;

                 int x = 0;

                 

                 Random rand = new Random();

                 rand.nextInt();

                 int number = 1 + rand.nextInt(100); // 1부터 100사이 랜덤 수 발생

                 

                 System.out.println("게임을 시작하지");

                 System.out.println("1부터 100사이의 정수값을 생성했다");

                 System.out.println("몇 일까?  6번의 기회가 있다");

                 // 값을 입력하면 발생한 랜덤수를 프린트 함.

                 Scanner sc = new Scanner(System.in);

                 System.out.println();

                 

                 // 6번 반복

                 while (cnt > 0 && cnt <= 6) {

                          cnt++;

                          

                          // 입력값과 예외처리 실행.

                          Input = sc.nextInt();

                          if (Input > 0 && Input < 101) {

                                   if (Input == number) {

                                            System.out.println("올ㅋ 빙고!");

                                   } else if(Input > number) {

                                            System.out.println("아님, Hint : Down");

                                   } else if(Input < number) {

                                            System.out.println("아님, Hint : Up");

                                   }

                          }else {

                                   System.out.println("다시, 1부터 100사이의 값이어야 한다.");

                          }

                          System.out.println("남은기회는 " + (7 - cnt) + "번이다");

                          

                 }

                 System.out.println("기회는 모두 소진되었다.");

                 //System.out.println("생성된 값은 : " +number +" 이었다.");

                 //재도전을 물음.

                 System.out.println("더해볼래?");

                 System.out.println("yes or no ?");

                 

                 //선택지 관련 변수

                 String text; 

                 

                 //값 입력받고, 이벤트 실행.

                 text = sc.next();

                 switch(text){

                          case "yes":

                                   System.out.println("자, 몇 일까?  6번의 기회가 다시 생겼다.");

                                   

                                   cnt = 1;

                                   while (cnt > 0 && cnt <= 6) {

                                            cnt++;

                                            

                                            // 입력값과 예외처리 실행.

                                            Input = sc.nextInt();

                                            if (Input > 0 && Input < 101) {

                                                    if (Input == number) {

                                                             System.out.println("올ㅋ 빙고!");

                                                    } else if(Input > number) {

                                                             System.out.println("아님, Hint : Down");

                                                    } else if(Input < number) {

                                                             System.out.println("아님, Hint : Up");

                                                    }

                                            }else {

                                                    System.out.println("다시, 1부터 100사이의 값이어야 한다.");

                                            }

                                            System.out.println("남은기회는 " + (7 - cnt) + "번이다");

                                            

                                   }

                                   System.out.println("기회는 모두 소진되었다.");

                                   

                                   //재도전을 물음.

                                   System.out.println("아쉽게도 끝이야, 다음에 또 봐");

                                   System.out.println("생성된 값은 : " +number +" 이었다.");

                                   

                          break;

                          case "no":

                                   System.out.println("다음에  또 봐");

                                   System.out.println("생성된 값은 : " +number +" 이었다.");

                          break;
         

                 }

         

         }// end main

}// end class

 

'JAVA > 조건문' 카테고리의 다른 글

성적 입출력  (0) 2020.08.08
날짜 계산기  (0) 2020.08.08
Comments