-
Notifications
You must be signed in to change notification settings - Fork 1
/
ChangeUI.java
58 lines (52 loc) · 3.35 KB
/
ChangeUI.java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
import java.util.Scanner;
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.io.IOException;
public class ChangeUI
{
public static void checkChange() // 잔돈 보유량확인 메소드
{
System.out.println("\n┌────────────────────────────────────────────────────┐");
System.out.println("│ [현재 잔돈 보유량] │");
System.out.println("└────────────────────────────────────────────────────┘");
System.out.printf(" ▶ 500원 : %3d개 = %8d원\n", Change.change.get(500), 500 * Change.change.get(500));
System.out.printf(" ▶ 1000원 : %3d개 = %8d원\n", Change.change.get(1000), 1000 * Change.change.get(1000));
System.out.printf(" ▶ 5000원 : %3d개 = %8d원\n", Change.change.get(5000), 5000 * Change.change.get(5000));
System.out.printf(" ▶ 10000원 : %3d개 = %8d원\n", Change.change.get(10000), 10000 * Change.change.get(10000));
System.out.println("──────────────────────────────────────────────────────");
System.out.printf(" ==> 총액은 %d원입니다.\n\n", Change.sum());
}
public static void addChange() throws IOException // 잔돈 추가 메소드
{
Scanner sc = new Scanner(System.in);
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
String str;
System.out.println("\n┌────────────────────────────────────────────────────┐");
System.out.println("│ [잔돈 추가] │");
System.out.println("│ │");
System.out.println("│ (500원, 1000원, 5000원, 10000원) │");
System.out.println("└────────────────────────────────────────────────────┘");
do
{
System.out.print("\n>> 금액 단위와 개수를 입력해 주세요.(공백 구분) : ");
// 추가 희망하는 액수는 변수 unit
// 갯수는 변수 count에 대입
int unit = sc.nextInt();
int count = sc.nextInt();
if ((unit != 500) && (unit != 1000) && (unit != 5000) && (unit != 10000))
System.out.println("잘못된 금액 단위 입니다. 다시 입력해주세요." + "\n");
else if ((unit == 500 && count + Change.change.get(unit) > 100) || (unit != 500 && count + Change.change.get(unit) > 50))
System.out.println("추가하려는 잔돈의 갯수가 너무 많습니다. 다시 입력해주세요." + "\n");
else
{
System.out.printf("\n==> %d원을 %d개 추가 하였습니다.\n\n",unit, count);
// 추가 희망한 갯수에 기존의 잔돈 보유 갯수를 더해주고
count += Change.change.get(unit);
// 해당하는 액수의 해쉬맵 밸류에 count값 대입 (기존 보유랑 + 새로운 추가량)
Change.change.put(unit, count);
}
System.out.print(">> 잔돈 추가 : Y or y, 뒤로 가기 : Ctrl+z : ");
}
while ((str=br.readLine()) != null);
}
}