package Exam;
import java.util.Scanner;
class Bill {
String name; //품명
int price; //단가
int quantify; //수량
public Bill() {} // 기본 생성자
public Bill(String n, int p, int q) { // 인자 생성자
name = n;
price = p;
quantify = q;
}
}
public class Ex05_BIll {
// 추후 배울 개념, final가 붙으면 값을 변경할 수 없음
// 부가가치세율은 클래스멤버로 선언해야 한다고 단서조항 있음.
public static final double TAX_RATE = 1.1;
public static void main(String[] args) {
Scanner sc=new Scanner(System.in);
System.out.print("메뉴는 몇개인가요? : ");
Bill[] menu=new Bill[sc.nextInt()];
//메뉴와 단가, 수량을 키보드로 입력 받기
for(int i=0; i<menu.length; i++) {
System.out.println
((i+1)+"번째 메뉴의 품명, 단가, 수량을 입력해주세요");
menu[i] = new Bill
(sc.next(), sc.nextInt(), sc.nextInt());
}
System.out.println(); //빈 줄 삽입
int totalPrice=0; //총금액 변수
System.out.print("품명\t단가\t수량\t금액\n");
System.out.println("---------------------------------");
for(int i=0; i<menu.length; i++) {
//일단 출력하고,
System.out.printf("%s\t%,d\t%d\t%,d원\n",
menu[i].name,
menu[i].price,
menu[i].quantify,
((menu[i].price)*(menu[i].quantify))); // 차례로 품목, 단가, 수량, 금액 출력
//총 금액을 계산한다.
totalPrice+=((menu[i].price)*(menu[i].quantify));
}
System.out.println("---------------------------------");
// 공급가액=총금액/1.1
int supplyPrice = (int)(totalPrice / Ex05_BIll.TAX_RATE);
// 부가세액을 구하자 = 총금액 - 공급가액
int vat = totalPrice -supplyPrice;
System.out.println("---------------------------------");
System.out.printf("공급가액\t\t\t%,d원\n", supplyPrice);
System.out.printf("부가세액\t\t\t%,d원\n", vat);
System.out.println("---------------------------------");
System.out.printf("청구금액\t\t\t%,d원\n", totalPrice);
sc.close();
}
}
결과창
'문제 풀이 > Java' 카테고리의 다른 글
[Java] 추상클래스를 적용하여 급여관리 시스템 만들어보기 (0) | 2021.09.02 |
---|---|
[Java] 상속과 메서드 오버로딩을 활용하여 급여관리 시스템 만들어보기 (0) | 2021.08.30 |
[Java] 클래스 응용문제_TV 정보 바꾸기 (0) | 2021.08.23 |
[Java] 배열 알고리즘 응용문제 (0) | 2021.08.20 |
[Java] 배열을 통해 값을 무작위로 입력받고, 내림차순으로 재정렬하기 (0) | 2021.08.20 |
댓글