ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 과제3. 놀이동산 입장권 계산 프로그램
    백엔드 스쿨/Java 2023. 11. 6. 17:36

    목적

    Scanner의 입력함수와 다중 조건문을 통한 입장권 계산 로직 작성

    놀이공원 입장료를 구하는 조건에 맞게 로직 작성

    입력내용은 나이, 입장시간, 국가유공자 여부, 복지카드 여부 순으로 입력

    놀이공원 입장료 할인은 일반 할인과 특별 할인이 있습니다.

    입장료 조건

    입장료 할인은 중복할인 되지 않으며, 중복될 경우 가장 할인을 많이 받은 금액으로 정해집니다.

    - 3세미만이면 무료 입장

    - 복지카드와 국가유공자의 경우 일반 할인 적용

    - 13세미만이면 특별 할인 적용

    - 17시이후에 입장하면 특별 할인 적용

    기본 입장료 : 10,000원

    특별 할인의 경우 : 4,000원

    일반 할인의 경우 : 8,000원

    콘솔 예시

     

    코딩 방법 구상

    입장료는 4가지 케이스가 존재. 

    1. 기본 입장료 : 10,000원

    - 할인이 없는 경우

    2. 일반 할인 : 8,000원

    - 복지카드를 소유하거나 국가유공자인 경우

    3. 특별 할인 : 4,000원

    - 13세 미만, 17시 이후 입장할 경우 

    4. 무료 : 0원

    - 3세 미만인 경우

     

    중복인경우 가장 싼 가격으로 정해지므로 가장 싼 케이스부터 체크하는것이 적절하다고 판단됨.

    if문을 통하여 or 연산을 이용하여 가장 낮은 케이스부터 차례대로 체크.

     

    import java.util.Scanner;
    
    public class JavaStudy03 {
        public static void main(String[] args) {
    		Scanner sc = new Scanner(System.in);
    		
    		System.out.println("[입장권 계산]");
    		
    		System.out.print("나이를 입력해 주세요.(숫자):");
    		int age = sc.nextInt();
    		sc.nextLine();
    				
    		System.out.print("입장 시간을 입력해 주세요.(숫자입력):");
    		int time = sc.nextInt();
    		sc.nextLine();
    				
    		System.out.print("국가유공자 여부를 알려주세요.(y/n):");
    		String ds = sc.next();
    		sc.nextLine();
    						
    		System.out.print("복지카드 여부를 알려주세요.(y/n):");
    		String card = sc.next();
    		sc.nextLine();
    		
    		System.out.print("입장료: ");
    		if(age<3)
    			System.out.print("0");
    		else if(age<13 || time>=17)
    			System.out.print("4000");
    		else if(ds.equals("y") || card.equals("y"))
    			System.out.print("8000");
    		else
    			System.out.print("10000");
    		
    	}
    }

     

     

Designed by Tistory.