하루의 일상💜

[JAVA] 거스름돈 계산하는 자판기 만들기 본문

JAVA/실습

[JAVA] 거스름돈 계산하는 자판기 만들기

도하루박 2022. 7. 25. 16:03
반응형

 

자판기를 이용할때 음료를 선택하고 지불한 금액에 따라 거스름돈의 천원, 오백원, 백원짜리를 얼마씩 줘야하는 프로젝트를 만들어 보았다. 

사용자가 선택한 음료와 지불한 가격에 거스름돈을 계산하는 식을 사용 했는데 주로 조건문 if를 사용해서 선택했을 번호의 경우에 따라 로직을 완성해 보았다. 

 

package eunji;

import java.util.Scanner;
 
public class Java06 {
 
    public static void main(String[] args) {
    		//거스름돈 받을 변수 선언
    		int change=0;
    		//천원, 오백원, 백원 단위 변수 선언
    		int oneThousand=0,fiveHundred=0,hundred=0;
    	
    		System.out.println("☆★음료 자판기★☆");
    		System.out.println();
    		System.out.println("음료를 골라주세요\n1. 콜라 \t800원 \n2. 사이다 \t1200원 \n3. 커피 \t1800원");
    		
    		Scanner sc=new Scanner(System.in);
    		System.out.print("품목 번호 입력: ");
    		int num = sc.nextInt();
    		
    		String menuName="";
    		int menuPrice=0;
    		
    		if(num==1) {
    			menuName="콜라";
    			menuPrice=800;
    		}else if(num==2) {
    			menuName="사이다";
    			menuPrice=1200;
    		}else if(num==3){
    			menuName="커피";
    			menuPrice=1800;
    		}else {
    			System.out.println("잘못 입력하였습니다.");
    		}
    		System.out.println("선택하신 "+menuName+"는 "+menuPrice+"원 입니다.");
    		System.out.println();
    		System.out.println("지불할 금액을 입력해 주세요.");
    		System.out.print("금액 입력: ");
    		System.out.println();
    		
    		int money=sc.nextInt();
    		
    		//콜라를 선택했을 경우 지불한 금액이 크거나 같을 때 조건문과 거스름돈을 계산해주는 조건식을 작성하였다. 
    		if(num==1&&money>=menuPrice) {
    			change=money-menuPrice;
    		}else if(num==2&&money>=menuPrice) {
    			change=money-menuPrice;
    		}else if(num==3&&money>=menuPrice) {
    			change=money-menuPrice;
    		}else {
    			System.out.println("금액이 부족합니다.");
    		}
    		System.out.println();
    		System.out.println("거스름돈은 "+change+"원 입니다.");
    		
    		oneThousand=change/1000;
    		fiveHundred=change%1000/500;
    		hundred=change%1000%500/100;
    		
    		System.out.print("천원: "+oneThousand+"장 ");
    		System.out.print("오백원: "+fiveHundred+"개 ");
    		System.out.println("백원: "+hundred+"개");
    		System.out.println("이용해주셔서 감사합니다.");
    }
}

이 프로젝트에서는 반복문을 사용하지 않았다.

하지만 진짜 자판기 프로그램이라면 금액을 잘못 입력했을 경우나 처음부터 메뉴를 다시 고르고 싶을 경우에 다시 선택을 할 수 있는 선택지가 주어지기 위해서는 반복문이 필요할 것이다. 다음 프로젝트에서는 반복문까지 사용해서 사용자가 여러 종류의 음료도 받고 그에 따라 결제까지 할 수 있는 프로젝트를 만들어 봐야겠다. 

반응형