-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathatm_program.py
More file actions
109 lines (95 loc) · 4.16 KB
/
Copy pathatm_program.py
File metadata and controls
109 lines (95 loc) · 4.16 KB
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
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
import random
import datetime
from customer import Customer
atm = Customer(id)
while True:
id = int(input("Masukkan pin Anda: "))
trial = 0
while id != int(atm.checkPin()) and trial < 3:
id = int(input("Pin Anda salah.\nSilakan Masukkan pin Anda lagi: "))
trial += 1
if trial == 3:
print("Error. Silakan ambil kartu dan coba lagi..")
exit()
while True:
print("Selamat datang di ATM! Berikut fitur yang tersedia...")
print(
"\n1 - Cek Saldo \t 2 - Tarik Tunai \t 3 - Setor Tunai \n4 - Ganti Pin \t 5 - Keluar "
)
selectmenu = int(input("\nSilakan pilih menu: "))
if selectmenu == 1:
print("Sisa saldo Anda sekarang: Rp." + str(atm.checkBalance()))
print(
"----------------------------------------------------------------------------------"
)
elif selectmenu == 2:
nominal = int(input("Masukkan nominal yang ingin Anda ambil: "))
verify_withdraw = input(
"Konfirmasi: Anda akan melakukan tarik tunai dengan nominal berikut? \nRp."
+ str(nominal)
+ " [y/n]: "
)
if verify_withdraw == "y":
print("Saldo awal anda adalah: Rp." + str(atm.checkBalance()) + "")
else:
break
if nominal < atm.checkBalance():
atm.withdrawBalance(nominal)
print("Transaksi tarik tunai berhasil!")
print("Sisa saldo Anda sekarang: Rp." + str(atm.checkBalance()) + "")
else:
print("Maaf. Saldo anda tidak cukup untuk melakukan tarik tunai!")
print("Silakan lakukan setor tunai terlebih dahulu")
print(
"----------------------------------------------------------------------------------"
)
elif selectmenu == 3:
nominal = int(input("Masukkan nominal yang ingin Anda setor: "))
verify_deposit = input(
"Konfirmasi: Anda akan mmelakukan setor tunai degan nominal berikut? \nRp."
+ str(nominal)
+ " [y/n]: "
)
if verify_deposit == "y":
atm.depositBalance(nominal)
print(
"Sisa saldo Anda sekarang adalah: Rp."
+ str(atm.checkBalance())
+ "\n"
)
else:
break
print(
"----------------------------------------------------------------------------------"
)
elif selectmenu == 4:
verify_pin = int(input("Masukkan pin lama anda : "))
while verify_pin != int(atm.checkPin()):
print("Pin yang Anda masukkan salah, silakan masukkan pin: ")
updated_pin = int(input("Silakan masukkan pin baru: "))
print("Pin Anda berhasil diganti!")
verify_newpin = int(input("Coba masukkan pin baru: "))
if verify_newpin == updated_pin:
print("Pin baru Anda sesuai!")
else:
print("Maaf, pin Anda salah! ")
print(
"----------------------------------------------------------------------------------"
)
elif selectmenu == 5:
print(
"Resi tercetak otomatis saat anda keluar. \nHarap simpan tanda terima ini sebagai bukti transaksi anda."
)
print("No. Record : ", random.randint(100000, 1000000))
print("Tanggal : ", datetime.datetime.now())
print("Saldo akhir: ", atm.checkBalance())
print("Terima kasih telah menggunakan ATM!")
print(
"----------------------------------------------------------------------------------"
)
exit()
else:
print("Error. Maaf, menu tidak tersedia")
print(
"----------------------------------------------------------------------------------"
)