놀이동산 입장권 계산 프로그램
- 수행 목적 : Scanner의 입력함수와 다중 조건문을 통한 입장권 계산 로직 작성
- 간략 소개
: 놀이동산의 입장권은 나이와 기타 우대사항에 따라 입장료가 달라집니다.
: 문제에서 주어진 조건에 맞는 입장료를 구하는 프로그램을 작성해 보세요.
※ 필수 준수사항
1. 놀이공원 입장료를 구하는 조건에 맞게 로직 작성
2. 입력내용은 나이, 입장시간, 국가유공자 여부, 복지카드 여부 순으로 입력
[놀이공원 입장료 할인 종류 = 일반 할인, 특별 할인]
1. 3세 미만이면 무료 입장
2. 복지카드와 국가유공자의 경우 일반 할인 적용
3. 13세 미만이면 특별 할인 적용
4. 17시 이후에 입장하면 특별 할인 적용
기본 입장료 : 10,000원 / 특별 할인의 경우 : 4,000원 / 일반 할인의 경우 : 8,000원
Scanner를 통해 char형 데이터 입력받기
char형의 경우 Scanner을 통해 입력 받아 변수에 저장하고 싶었으나, next 관련 함수에서 char 형 입력을 받아주는 함수를 찾지 못했다.
아래와 같이 next를 통해 받은 String에서 charAt을 통해 char 값을 입력 받았다.
Scanner sc = new Scanner(System.in);
char country = sc.next().charAt(0);
작성 코드
// 놀이동산 입장권 계산 프로그램
import java.util.Scanner;
public class AmusementPark {
public static void main(String[] args) {
System.out.println("[입장권 계산]");
Scanner sc = new Scanner(System.in);
int price;
System.out.print("나이를 입력해 주세요.(숫자): ");
int age = sc.nextInt();
System.out.print("입장 시간을 입력해 주세요.(숫자 입력): ");
int time = sc.nextInt();
System.out.print("국가유공자 여부를 입력해 주세요.(y/n): ");
char country = sc.next().charAt(0);
System.out.print("복지카드 여부를 입력해 주세요.(y/n): ");
char card = sc.next().charAt(0);
if (age<3) {
price = 0;
} else if (age < 13 || time >= 17) {
price = 4000;
} else if (country == 'y' || card == 'y') {
price = 8000;
} else {
price = 10000;
}
System.out.println(String.format("입장료 : %d", price));
sc.close();
}
}
https://gist.github.com/coha96/dbf94851712debd2c8b0fca636a843e6
'JAVA > 백엔드_미니과제' 카테고리의 다른 글
가상 대선 당선 시뮬레이션 프로그램 (0) | 2023.03.10 |
---|---|
달력 출력 프로그램 (0) | 2023.03.08 |
주민등록번호 생성 프로그램 (0) | 2023.03.07 |
결제 금액 캐시백 계산 프로그램 (0) | 2023.03.06 |
구구단 출력 (0) | 2023.03.05 |