728x90
이 문제를 풀때 여러모로 생각을 많이 했다.
명품 자바 3장 6번 문제이다.
import java.util.Scanner;
public class Q6 {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
//현금 변수 선언
int sum = 0;
//배열 선언
int [] unit = {50000, 10000, 1000, 500, 100, 50, 10, 1};
//사용자에게 값을 받기
System.out.print("금액을 입력하시오>>");
int user1 = sc.nextInt();
sum += user1;
//받은 값을 화폐로 변환하며 출력하기
for(int i=0; i<8; i++) { //저장된 배열을 각각 불러옵니다
switch(unit[i]) {
case 50000 :
if(sum>=unit[i]) {
int user2 = user1 / unit[i];
sum = user1 - unit[i]*user2;
System.out.println(unit[i]+"원 짜리 : "+user2+"개");
break;
}else {
break;
}
case 10000 :
if(sum>=unit[i]) {
int user2 = sum / unit[i];
sum = sum - unit[i]*user2;
System.out.println(unit[i]+"원 짜리 : "+user2+"개");
break;
}else {
break;
}
case 1000 :
if(sum>=unit[i]) {
int user2 = sum / unit[i];
sum = sum - unit[i]*user2;
System.out.println(unit[i]+"원 짜리 : "+user2+"개");
break;
}else {
break;
}
case 500 :
if(sum>=unit[i]) {
int user2 = sum / unit[i];
sum = sum - unit[i]*user2;
System.out.println(unit[i]+"원 짜리 : "+user2+"개");
break;
}else {
break;
}
case 100 :
if(sum>=unit[i]) {
int user2 = sum / unit[i];
sum = sum - unit[i]*user2;
System.out.println(unit[i]+"원 짜리 : "+user2+"개");
break;
}else {
break;
}
case 50 :
if(sum>=unit[i]) {
int user2 = sum / unit[i];
sum = sum - unit[i]*user2;
System.out.println(unit[i]+"원 짜리 : "+user2+"개");
break;
}else {
break;
}
case 10 :
if(sum>=unit[i]) {
int user2 = sum / unit[i];
sum = sum - unit[i]*user2;
System.out.println(unit[i]+"원 짜리 : "+user2+"개");
break;
}else {
break;
}
case 1 :
if(sum>=unit[i]) {
int user2 = sum / unit[i];
sum = sum - unit[i]*user2;
System.out.println(unit[i]+"원 짜리 : "+user2+"개");
break;
}else {
break;
}
}
}
sc.close();
}
}
답안에 변환 되지 않은 돈은 출력되지 않았다.
그것을 보아 방법이 없을까 싶어
실제 자판기를 떠올렸다.
동전이 가득 들어있는 상자, 그리고 실제 분리 되는 기계의 모습을
흡사 스위치 문이 내 머리 속에 번뜩 떠올렸다.
나중에 내가 공부수준이 올라가서 이 글을 본다면
어떤 생각을 하게 될지 기대가 된다.
728x90
'프로그래밍 > JAVA' 카테고리의 다른 글
항상 사용하는 배열 순서대로 출력하기 (0) | 2022.12.08 |
---|---|
4x4배열 랜덤값 10개만 바꾸기( X ) (0) | 2022.12.08 |
자바 구구단 배열로 출력하기 (0) | 2022.12.05 |
for-each 문 (0) | 2022.11.30 |
자바 삼각형 별찍기로 그리기 (0) | 2022.11.29 |