TUGAS REMEDIAL
PEMROGRAMAN DASAR
JUDUL
PROGRAM BANK ATM
NAMA : Lucio Almeida da costa
Nim :
121051003
Jurusan :
TEKNIK INFORMATIAKA
Klas : “A”
INSTITUT
SAINS & TEKNOLOGI
"AKPRIND"
YOGYAKARTA
2012
program bank_mandiri;
uses wincrt;
Type tabungan_bank=record
Nama_rekng:string;
No_rekng:string;
Alamat:string;
jumlh_tabungan:longint;
end;
array_tabungan=array[1..30] of
tabungan_bank;
type
penarikkan_bank=record
nama_rekng:string;
no_rekng:string;
jumlh_tabungan,total:longint;
jumlh_penarikkan:longint;
cek_saldo:integer;
end;
array_penarikkan=array[1..30] of
penarikkan_bank;
var tabungan:array_tabungan;
penarikkan:array_penarikkan;
i,j,n,pil,m:byte;
procedure menu; FORWARD;
procedure My_identity;
begin
clrscr;
gotoXY(50, 8); write('THIS PROGRAM WAS
CREATED BY :... ');
writeln('');
gotoXY(50,10); write('Name : Lucio A. Da Costa ');
gotoXY(50,12); write('NIM : 121051003 ');
gotoXY(50,14); write('Title : Programming ');
gotoXY(50,16); write('Jurusan : Teknik Informatika ');
gotoXY(50,18); write('Fakultas : Teknik Industri ');
gotoXY(50,20); write('UNIVERSITAS IST AKPRIND YOGYAKARTA ');
gotoXY(50,22); write('Tanggal : Senin, 04 Mar 2013 ');
gotoXY(50,24); write('Bidang Studi : Pemrograman Dasar ');
gotoXY(5,28); write('Press Enter To
Retrun To The Menu..!!_');
readln; menu;
end;
procedure Input_data_Bank(var
x:array_tabungan);
var lagi:char;
begin
repeat
begin
clrscr;
inc(n);
writeln ('::::::::::...MENGISI DATA
BANK...:::::::::::');
writeln;
write
('Nama rekening :
');readln(x[n].nama_rekng);
write
('No.Rekening :
');readln(x[n].no_rekng);
write
('Alamat :
');readln(x[n].alamat);
write
('jumlah tabungan pertama : ');readln(x[n].jumlh_tabungan);
writeln;
write
('Mau isi lagi...!! [Y/T]..?');readln(lagi);
end
until(lagi<>'y');
end;
procedure cetak_data_bank(var
x:array_tabungan);
begin
clrscr;
writeln
('===============================================================');
writeln ('No Nama_Rekng NO.Rekng
Alamat jumTabungan ');
writeln
('==============================================================');
for i:=1 to n do with x[i] do
writeln
(i:2,'',Nama_Rekng:11,'',No_Rekng:12,'',Alamat:14,' ','Rp:':6,jumlh_Tabungan:6);
writeln
('================================================================');
write('Tekan ENTER untuk kembali ke Sub
MENU');
end;
procedure hapus_data(var
x:array_tabungan);
var rec_hapus:byte;
begin
write('Record mana yg anda ingin di
hapus....?');readln(rec_hapus);
for i:=rec_hapus to (n-1) do
x[i]:=x[i+1];
dec(n);
write('record no',rec_hapus,'Data
telah di hapus...!');
end;
procedure
Tambah_tabungan_uang(var x:array_tabungan);
var no_tabungan:string;
ada,tidak_ada:boolean;
posisi,tambah:byte;
begin
write('Masukkan no.Rekening
anada :');readln(no_tabungan);
for i:=1 to n do
begin
if (x[i].No_rekng=
No_tabungan) then
begin
ada:=true;posisi:=i;
tidak_ada:=false;posisi:=i;
end;
end;
if ada=true then
begin
write ('Masukkan jumlah uang
yg akan di simpan :');readln(tambah);
x[posisi].jumlh_Tabungan:=x[posisi].jumlh_Tabungan+tambah;
end;
if tidak_ada=false then
else write('Mohon Maaf
No.rekening anda tidak ada...???');readln;
end;
procedure penarikkan_uang;
var penarikkan_uang:string;
cukup,tidak_cukup:boolean;
posisi:byte;
begin
clrscr;
inc(j);
writeln (':::::::...PENARIKKAN UANG DATRI MESIN ATM...::::::');
write (' Nama rekening :');readln(penarikkan[j].nama_rekng);
write (' No.rekening :');readln(penarikkan[j].no_rekng);
write (' Jumlah penarikkan
:');readln(penarikkan[j].jumlh_penarikkan);
penarikkan[j].no_rekng:=penarikkan_uang;
for i:=1 to n do
begin
cukup:=true;posisi:=i;
tidak_cukup:=false;posisi:=i;
end;
if
(tabungan[i].no_rekng=penarikkan_uang) and (tabungan[i].jumlh_tabungan>50)
then
if cukup then
penarikkan[j].cek_saldo:=penarikkan[j].jumlh_penarikkan-tabungan[posisi].jumlh_tabungan;
dec(tabungan[posisi].jumlh_tabungan);
if tidak_cukup=false then
else writeln('Maaf uang anda tidak
cukup untuk penarikan anda...!!');readln;
end;
procedure cek_saldo (var
y:array_penarikkan);
begin
writeln('=====================================================================');
writeln(' NO Nama Rekng No.rekng Jum_penarikan sisa saldo');
writeln('=====================================================================');
for i:=1 to j do with y[i]
do
begin
cek_saldo:=Jumlh_tabungan-jumlh_penarikkan;
writeln(i:2,'
',Nama_rekng:12,' ',No_rekng:14,'',Jumlh_penarikkan:16,'',cek_saldo:18);
writeln('=====================================================================');
end;
end;
procedure sub_menu;
begin
repeat
begin
clrscr;
Writeln ('******************SUB
MENU****************');
writeln('');
writeln (':::::::::::...BANK
MANDIRI...:::::::::::::');
writeln('');
writeln ('1. Input data Bank ===> ');
writeln ('2. Lihat data yg di
inputkan ===> ');
writeln ('3. Hapus data ===> ');
writeln ('4. Tambah tabungan
uang ===> ');
writeln ('5. Penarikkan uang ===> ');
writeln ('6. Cek saldo ===> ');
writeln ('7. Keluar ===. ');
write ('masukkan pilihan anda
(1==>7).....!!!...... ');readln(pil);
case pil of
1 : Input_data_Bank(tabungan);
2 : cetak_data_bank(tabungan);
3 : Hapus_data (tabungan);
4 : Tambah_tabungan_uang(tabungan);
5 : Penarikkan_uang;
6 : Cek_saldo(penarikkan);
7 : begin
menu;
end;
else
gotoXY(20, 26); write('Data Belum di
Input Mas.../mbak...Bro (Press Enter To Select Return)');readln;
Sub_menu;
end;
readln;
end
until (pil=7);
end;
procedure menu;
begin
clrscr;
writeln (':::::::::...MENU...:::::::::');
writeln ('1. Author Identity ');
writeln ('2. Entry Data ');
writeln ('3. Keluar dari program ');
write ('Masukkan Pilihan anda (1-3)....!!
');readln(pil);
case pil of
1 : My_Identity;
2 : begin
clrscr;
Sub_Menu;
end;
3 : begin
gotoXY(24,16); write('_____Thank
you for using this Simple Program_____');readln;
donewincrt;
end;
else
gotoXY(20,20);write(' Option Only 1 – 3….!!!!!'); readln;
menu;
end;
end;
{Program Utama}
begin
screensize.x := 600;
screensize.y := 800;
menu;
begin
Sub_Menu;
end;
donewincrt;
end.
