본문 바로가기

국비교육/국비교육 복습

Day03_condition_Test05 : if ~ else 조건문 + 할인율 적용 (★)

(Q) KH 반점에서는 다음과 같은 메뉴를 판매하고 있습니다.

- 자장면 : 5000원

- 짬뽕 : 6000원

매출을 올리기 위해서 총 3그릇 이상 주문하면 10%를 할인해줍니다

임의의 자장면, 짬뽕 주문 수량에 대해 결제금액을 계산하도록 구현

 

package day03;

import java.lang.*;

public class Day03_condition_Test05 {

	public static void main(String[] args) {

		int discount = 10;

		int jjajang = 5000, jjajangCount = 2;
		int champon = 6000, champonCount = 1;

		int totalCount = jjajangCount + champonCount;
		int totalPrice = jjajang * jjajangCount + champon * champonCount;

		int discountedPrice = totalPrice * (100 - discount) / 100;

		if(totalCount >= 3) {
			System.out.println(discountedPrice);
		}

		else {
			System.out.println(totalPrice);
		}
		
	}
	
}

 

1) 할인율을 적용하는 방법

i) 100의 보수를 이용하는 방법 : 할인 퍼센티지 10에 대한 100의 보수는 90임을 이용한다

//할인율 10%
int discountPercentage = 10;

//총 가격에 10%의 할인율을 적용하면 원래 총 가격의 90%이 최종 가격이 된다
int discountedPrice = totalPrice * (100 - discountPercentage) / 100;

** n의 보수 : 합쳐서 n이 되는 두 수

ex) 10에 대한 100의 보수는 90

       30에 대한 100의 보수는 70

 

ii) 할인율을 직접 정의하는 방법 (형 변환을 해야 하므로 뭔가 비효율적으로 느껴진다)

int discountPercentage = 10;
double discountRate = 10 / 100;

double discountedPrice = totalPrice - (double)totalPrice * discountRate;