본문 바로가기

자바 문제풀이

[Java] 결제 금액에 따른 캐시백 계산기 구현

간략소개: 직불카드로 결제를 하게 되면 이에 대한 캐시백을 제공해줍니다. 주어진 캐시백 금액을 계산하는 프로그램을 작성해보세요.


[캐시백 계산 조건]
-결제 금액의 10%를 적립한다.
-캐시백 포인트 단위는 백원 단위이다.(100원, 200원, 300원등)
-한건의 캐시백 포인트는 최대 300원을 넘을 수 없습니다.


int point = (int)((double)money * 0.1);

 

결제 금액의 10%를 캐시백으로 계산합니다. money * 0.1은 double 타입이기 때문에 (int)를 사용하여 int 타입으로 변환합니다.

point = point - point % 100;

 

계산된 캐시백 금액을 100원 단위로 내림 처리합니다. 예를 들어, 캐시백이 123원이면 100원, 278원이면 200원이 됩니다.

if (point > 300) {
    point = 300;
}

 

캐시백의 최대 금액은 300원으로 제한합니다. 계산된 캐시백이 300원을 초과하면 300원으로 설정합니다.

System.out.printf("결제 금액은 %d원이고, 캐시백은 %d원 입니다.", money, point);

 

최종적으로 결제 금액과 계산된 캐시백 금액을 출력합니다.



import java.util.Scanner;

public class Mini02 {

	public static void main(String[] args) {

		Scanner scanner = new Scanner(System.in);

		System.out.printf("[캐시백 계산]");
		System.out.println("결제금액을 입력해 주세요.");
		int money = scanner.nextInt();

		int point = (int)((double)money * 0.1);

		point = point - point % 100;

		if (point > 300) {
			point = 300;
		}

		//String msg = String.format();
		System.out.printf("결제 금액은 %d원이고, 캐시백은 %d원 입니다.", money, point);

	}

}

 

 

 

 

 

'자바 문제풀이' 카테고리의 다른 글

[JAVA] 구구단 출력하기  (0) 2024.08.06