Java 공부/Quiz

Day07- Quiz23

Hesitater 2021. 8. 23. 12:00
728x90
package quiz01;

import java.util.Scanner;

public class Quiz23A {  
   public static void main(String\[\] args) {
    //선생님 답변

    Scanner scan = new Scanner(System.in);

    System.out.print("금액을 투입하세요>");
    int money = scan.nextInt();


    while(true){
        System.out.println("남은금액:" + money +"원");
        System.out.println("[1]뎀이소다: 400원, [2] 밀킥스: 500원, [3]코가골라: 600원, [4]잔돈받기");
        System.out.print(">");
        int menu = scan.nextInt();


        boolean flag = false; //탈출을 위한 변수

        switch (menu) {
        case 1:

            if(money >= 400) {
                System.out.println("데미소다를 받았어요");
                money -= 400;
            } else {
                System.out.println("금액이 부족합니다");
            }
            break;
        case 2:
            if(money >= 500) {
                System.out.println("밀키스를 받았어요");
                money -= 500;
            } else {
                System.out.println("금액이 부족합니다");
            }
            break;

        case 3:
            if(money >= 600) {
                System.out.println("코카콜라를 받았어요");
                money -= 600;
            } else {
                System.out.println("금액이 부족합니다");
            }
            break;

        case 4:
            System.out.println("남은금액:" + money + "를 반환합니다.");
            flag = true;
            break;

        default:
            System.out.println("잘못 입력 입력하세요");
            System.out.println("메뉴를 정확히 입력하세요");
            break;
        }

        if(flag) break; //true라면 탈출  switch문에서 한번빠져나온후 while을빠져나온다
        // flag 자체가 true 인셈이다 

    }

}


}

결과값

package quiz01;

import java.util.Scanner;

public class Quiz23AA {  
public static void main(String\[\] args) {


    Scanner scan = new Scanner(System.in);

    System.out.print("금액을 투입하세요>");
    int money = scan.nextInt();

    ex: while (true) {
        System.out.println("남은금액:" + money + "원");
        System.out.println("[1]뎀이소다: 400원, [2] 밀킥스: 500원, [3]코가골라: 600원, [4]잔돈받기");
        System.out.print(">");
        int menu = scan.nextInt();

        boolean flag = false; // 탈출을 위한 변수

        switch (menu) {
        case 1:

            if (money >= 400) {
                System.out.println("데미소다를 받았어요");
                money -= 400;
            } else {
                System.out.println("금액이 부족합니다");
            }
            break;
        case 2:
            if (money >= 500) {
                System.out.println("밀키스를 받았어요");
                money -= 500;
            } else {
                System.out.println("금액이 부족합니다");
            }
            break;

        case 3:
            if (money >= 600) {
                System.out.println("코카콜라를 받았어요");
                money -= 600;
            } else {
                System.out.println("금액이 부족합니다");
            }
            break;

        case 4:
            System.out.println("남은금액:" + money + "를 반환합니다.");
            // flag = true;
            break ex;   //brea +이름 으로 탈출사용 탈출하고싶은 문장 앞에 이름 붙이는것

        default:
            System.out.println("잘못 입력 입력하세요");
            System.out.println("메뉴를 정확히 입력하세요");
            break;
        }

        // if(flag) break; //true라면 탈출 switch문에서 한번빠져나온후 while을빠져나온다
        // flag 자체가 true 인셈이다

    }

}


}

결과값은 같은데

탈출하는 형식이 다르다.

1. boolean flag = false; // 탈출을 위한 변수

2. break +이름 ; 이용

이건 내가 사용한것

package quiz01;

import java.util.Scanner;

public class Quiz23 {


  public static void main(String[] args) {
    // TODO Auto-generated method stub

    /* while문안에서 switch문 이용하여 해보기  (
     * 문제
     * 1. Scanner를 이용하여 금액을 입력 받으세요.
     * 2. 음료수를 선택하면 금액에서 차감하세요(반복문)
     * 3.금액이 부족하다면 "금액이 부족합니다" 를 출력하세요
     * 4. 4를 입력받으면 반복문을 종료하세요.
     * 
     */

    Scanner scan = new Scanner(System.in);
    System.out.print("금액을 투입해 주세요");

    int money = scan.nextInt();

    while(true) {

        System.out.printf("남은 금액 :%d\n",money);
        System.out.println("[1]뎀이소다: 400원, [2] 밀킥스: 500원, [3]코가골라: 600원, [4]잔돈받기");
        System.out.print("음료수선택>");
        int select = scan.nextInt();

        switch (select) {
        case 1:
            if(money >=400) {
            System.out.println("뎀이소다를 받았습니다.");
            money -= 400;
            } else {
                System.out.println("금액이 부족합니다. 돈을 넣어주세요!");
            }
            break;

        case 2:
            if(money >= 500) {
            System.out.println("밀킥스를 받았습니다.");
            money -= 500;
            } else {
                System.out.println("금액이 부족합니다. 돈을 넣어주세요!");
            }
            break;

        case 3:
            if(money >=600) {
            System.out.println("코가골라를 받았습니다.");
            money -= 600;
            } else {
                System.out.println("금액이 부족합니다. 돈을 넣어주세요!");
            }
            break;

        case 4:
            System.out.printf("남은금액 %d를 반환합니다. \n",money);
            break;
        default:
            System.out.println("선택지 중에 골라주세요.");
            break;
    } //switch

        System.out.println();

   } // while(true)


  }  
}  

'Java 공부 > Quiz' 카테고리의 다른 글

Day06- Quiz22  (0) 2021.08.23