Dalam membuat algoritma,ada kalanya ditemukan kasus yang melibatkan suatu kondisi yang harus dipilih atau diseleksi. Jika suatu kondisi tersbut terpenuhi atau benar,maka akan melakukan suatu proses tertentu.Tapi jika salah,maka proses tersebut tidak dijalakan,atau bahkan akan menjalankan proses yang lain.
Dalam Pascal terdapat seleksi :
1. If….Then, //biasanya digunakan untuk memilih satu keputusan diantara 2 pilihan.
If then…..Else //Else adalah keputusan yg diambil dan akan dilakukan jika kondisinya tidak terpenuhi
2. Case….Of ////digunakan untuk memilih suatu keputusan diantara banyak pilihan.
case …of…else
Contoh program :
1. 1. If then
program contoh_ifthen;
uses crt;
const
modal = 200000;
var
nama,alamat : string;
harga_baju,harga_celana,total,kembalian : longint;
begin
clrscr;
gotoxy(20,2);writeln(' INDOMART ');
gotoxy(20,3);writeln('-----------------------------------------------');
gotoxy(20,4);write('Nama :');readln(nama);
gotoxy(20,5);write('Alamat :');readln(alamat);
gotoxy(20,6);write('Harga Baju :Rp.');readln(harga_baju);
gotoxy(20,7);write('Harga Celana :Rp.');readln(harga_celana);
total:= harga_celana+harga_baju;
kembalian:= modal-total;
gotoxy(20,9);writeln('***********************************************');
gotoxy(20,10);writeln('Total Belanja :Rp.',total);
if total>modal then
begin
gotoxy(20,13);write(' Maaf Uang Anda Tidak cukup ')
end;
if total<modal then
begin
gotoxy(20,12);write('Kembalian :Rp.',kembalian)
end;
readln;
end.
1.2. If then..Else
Program hitung_gaji;
uses crt;
const
gpj = 5000;
lpj = 6000;
var
nip,nama : string;
jk,status : char;
ja : byte;
gapok,ta,tk,gb : longint;
begin
clrscr;
gotoxy(10,2);write(' MENGHITUNG GAJI ');
gotoxy(10,3);write('====================================');
gotoxy(10,4);write('NIP :');readln(nip);
gotoxy(10,5);write('Nama Pegawai :');readln(nama);
gotoxy(10,6);write('Status B/K :');readln(status);
gotoxy(10,7);
if status = 'B' then
begin
write('Jumlah Anak :0')
end;
if status = 'K' then
begin
write('Jumlah Anak :');readln(ja)
end;
gotoxy(10,8);write('Jenis Kelamin L/P :');readln(jk);
gotoxy(10,9);write('Gaji Pokok :');readln(gapok);
begin
if (status = 'K') and (ja>0) then
end;
begin
if JA > 3 then
ta:= 10000 * 3
else
ta:= 10000 * JA;
end;
if status= 'K' then
begin
tk:= 30000;
end;
gb:= gapok+ta+tk;
gotoxy(10,10);write('Tunjangan Anak :',ta);
gotoxy(10,11);write('Tunjangan Keluarga :',tk);
gotoxy(10,12);write('Gaji bersih :',gb);
gotoxy(10,13);write('==============================');
readln;
end.
2.1.Case …Of
Program_bioskop;
uses crt;
const
ana = 20000;
iron = 30000;
raid = 40000;
var
pila,juti,byar,byar1,byar2,byar3,kmbln : longint;
begin
clrscr;
gotoxy(10,2);writeln(' BIOSKOP SISTEM INFORMASI ');
gotoxy(10,3);write('====================================');
gotoxy(10,4);write('1.ANABElE 2.IRON MAN 3.THE RAID ');
gotoxy(10,5);write('Pilihan Anda :');read(pila);
case pila of
1: begin
gotoxy(10,6);write('Harga Tiket :',ana);
gotoxy(10,7);write('Masukkan Jumlah Tiket :');read(juti);
byar1:= juti*ana;
gotoxy(10,8);write('Total Bayar :',byar1);
gotoxy(10,9);write('Masukkan Pembayaran :');readln(byar);
kmbln:= byar-byar1;
gotoxy(10,10);write('Kembalian :',kmbln);
end;
2 : begin
gotoxy(10,6);write('Harga Tiket :',iron);
gotoxy(10,7);write('Masukkan Jumlah Tiket :');read(juti);
byar2:= juti*iron;
gotoxy(10,8);write('Total Bayar :',byar2);
gotoxy(10,9);write('Masukkan Pembayaran :');readln(byar);
kmbln:= byar-byar2;
gotoxy(10,10);write('Kembalian :',kmbln);
end;
3 : begin
gotoxy(10,6);write('Harga Tiket :',raid);
gotoxy(10,7);write('Masukkan Jumlah Tiket :');read(juti);
byar3:= juti*raid;
gotoxy(10,8);write('Total Bayar :',byar3);
gotoxy(10,9);write('Masukkan Pembayaran :');readln(byar);
kmbln:= byar-byar3;
gotoxy(10,10);write('Kembalian :',kmbln);
end;
end;
readln;
end.
2.2 Case..of..Else
program bio;
uses crt;
const
tita =20000;
termi=30000;
iron =40000;
var
studio : byte;
juti : byte;
total : word;
begin
clrscr;
writeln(' DAFTAR FILM ');
writeln('==================================');
write('Studio :');readln(studio);
case studio of
1: begin
writeln('Harga Tiket :',tita);
write('Masukkan Jumah Tiket :');readln(juti);
total:= (juti * tita);
writeln('Total Pembayaran:',total);
end;
2: begin
writeln('Harga Tiket :',termi);
write('Masukkan Jumah Tiket :');readln(juti);
total:= (juti * termi);
writeln('Total Pembayaran:',total);
end;
3: begin
writeln('Harga Tiket :',iron);
write('Masukkan Jumah Tiket :');readln(juti);
total:= (juti * iron);
writeln('Total Pembayaran:',total);
end;
else
begin
write('pilihan tidak ada');
end;
end;
readln;
end.
0 Response to "Seleksi Kondisi Dalam Pascal"