Jumat, 16 Januari 2015

PENYELEKSIAN KONDISI (IF) dan Contoh Programnya

Penyeleksian kondisi adalah salah satu elemen algoritma yang paling sederhana. Penyeleksian kondisi memungkinkan suatu pernyataan dieksekusi hanya jika kondisi terpenuhi atau tidak terpenuhi.

IF Sederhana

Bentuk paling sederhana dari pernyataan kondisional dalam setiap bahasa adalah if - then. Contoh:

if (a>b) then writeln(“A lebih besar dari B”);

bagian setelah if disebut dengan bagian kondisi dan bagian setelah then adalah bagian aksi. Jika aksi lebih dari satu instruksi maka bisa dikelompokkan dalam blok begin end. Seperti ini:

if (a>b) then
begin
writeln(“Kesimpulan:”);
writeln(“A lebih besar dari B”);
end;

IF dengan ELSE

Selain if - then, ada bentuk kondisional lain yaitu if - then - else. Kita bisa mengubah instruksi
semacam ini:

if (a>b) then writeln(“A lebih besar dari B”);

if (a<=b) then writeln(“A kurang dari atau sama dengan B”);

menjadi:

if (a>b) then writeln(“A lebih besar dari B”) else (“A kurang dari atau sama dengan B”);

Bagian else akan dieksekusi jika bagian kondisi tidak dipenuhi, atau dengan kata lain, bagian else dieksekusi jika kondisi yang terjadi adalah komplemen dari kondisi di bagian if.


Perhatikan: untuk memperjelas program, sebaiknya semua instruksi if yang memiliki else ditulis dengan komentar setelah else (untuk menjelaskan kondisi apa yang ditangani oleh else kepada pembaca program) seperti ini:

if (a>b) then
begin
writeln(“A lebih besar dari B”);
end else (* a<= b *)
begin
(“A kurang dari atau sama dengan B”);
end;

IF untuk banyak kondisi

Instruksi if boleh digabung dengan banyak instruksi if menangani kondisi yang kompleks (banyak kondisi dan banyak aksi), seperti ini:

if (kondisi_1) then
begin
aksi1;
end
else if (kondisi_2) then
begin
aksi2;
end else (* kondisi 1 dan 2 tidak dipenuhi*)
begin
aksi_n;
end.
Contoh Soal Buat Penggunaan Fungsi IF 
Buatlah program untuk mengetahui informasi harga dan besar angsurannya jika dikredit selama 10 tahub. adapun daftarnya sebagai berikut ;

Tipe                         harga                    Angsuran /Bulan
A                              50.000.000           500.000
B                              65.000.000           600.000              
C                              75.000.000           750.000 
D                              85.000.000           850.000       
berikut scriptnya 
 Program Gaji_Karyawan;
uses wincrt;
var nama, kode, jabatan : string [15];
Total, a, b, c : longint;
begin
writeln ('Gaji Karyawan PT XYZ');
write ('Nama Karyawan = '); readln (nama);
write ('Kode Karyawan [DR, WD, MN, ASI, KW] = '); readln (kode);
if (kode = 'DR') then
begin
jabatan := 'Direktur';
a := 3000000;
b := 850000;
c := 500000;
end
else
if (kode = 'WD') then
begin
jabatan := 'Wakil Direktur';
a := 2500000;
b := 800000;
c := 500000;
end
else
if (kode = 'MN') then
begin
jabatan := 'Manajer';
a := 2000000;
b := 800000;
c := 450000;
end
else
if (kode = 'ASI') then
begin
jabatan := 'Asisten';
a := 1500000;
b := 700000;
c := 400000;
end
else
begin
jabatan := 'Karyawan';
a := 1000000;
b := 500000;
c := 300000;
end;
writeln ('Jabatan = ', jabatan);
writeln ('Gaji Pokok = Rp.', a);
writeln ('Tunjangan Transport = Rp.', b);
writeln ('Tunjangan Makan =  Rp.', c);
total := a + b + c;
writeln ('total Gaji = Rp. ', total);
readln;
end.

Sekian, Terima kasih

Tidak ada komentar:

Posting Komentar