1. Pendahuluan
Dalam dunia nyata, terkadang seseorang dihadapkan pada suatu pilihan, dan ia harus menerima konsekuensi setiap pilihannya. Hal yang sama akan banyak dijumpai dalam pemrograman komputer, bahkan dapat dikatakan bahwa semua program yang sifatnya kompleks pasti mengikutsertakan aspek pemilihan yang mempengaruhi kelanjutan jalannya program. Dalam pemrograman dengan bahasa apapun, hal seperti sering disebut dengan seleksi kondisi, atau percabangan (branch). Dengan melakukan seleksi kondisi, program dapat menentukan tindakan apa yang harus dikerjakan, tergantung dari hasil kondisi yang diseleksi tersebut.
Dalam bahasa Pascal, seleksi kondisi dapat dilakukan dengan 2 cara, yaitu menggunakan kata cadangan If .. then dan Case .. of. Kata cadangan If .. then biasa digunakan untuk melakukan seleksi kondisi dengan 1 atau 2 pilihan. Sedangkan kata cadangan Case .. of biasa digunakan bila akan melakukan seleksi kondisi terhadap beberapa pilihan sekaligus (lebih dari 2 pilihan). Bukan berarti kata cadangan If .. then tidak dapat digunakan untuk melakukan seleksi kondisi terhadap lebih dari 2 pilihan, tetapi menggunakan Case .. of akan lebih efisien bila menghadapi seleksi kondisi untuk lebih dari 2 pilihan.
Baik dalam If .. then maupun Case .. of, suatu aksi hanya akan dijalankan apabila kondisi penentunya tercapai (bernilai true), dan tidak akan dijalankan apabila kondisi penentunya tidak tercapai (bernilai false). Bila terdapat alternatif pilihan aksi dan kondisinya sesuai, maka aksi tersebut akan dijalankan. Bila tidak terdapat kondisi yang sesuai sama sekali, maka tidak satupun pilihan aksi yang akan dijalankan. Terkadang diperlukan adanya pilihan aksi terakhir apabila tidak satupun kondisinya terpenuhi.
2. Kata cadangan yang digunakan
If : menyebutkan kondisi untuk suatu statemen agar dapat dieksekusi
Then : menyebutkan statemen aksi yang harus dijalankan saat kondisi terpenuhi
Else : menyebutkan statemen aksi yang dapat dieksekusi saat statemen aksi lain tidak dieksekusi karena kondisinya tidak terpenuhi
Case : menyebutkan statemen ekspresi yang akan mencari kondisi yang sesuai berdasarkan pilihan statemen kondisi yang tersedia
Of : kata cadangan yang digunakan bersama Case untuk menyebutkan pilihan kondisi yang sesuai serta aksi yang akan dijalankan apabila suatu kondisi terpilih
Or : operator logika yang dapat digunakan untuk membantu seleksi kondisi
3. Fungsi yang digunakan
Sqrt : menghasilkan nilai akar dari suatu argumen
4. Contoh Program
a. Contoh pertama
Program m3c1;
Uses wincrt;
Var
a, b, c, max : integer;
Begin
Writeln ('Masukkan 3 bilangan: ');
Readln (a,b,c);
Writeln;
If a > b then
if a > c then
max := a
else
max := c
else
if b > c then
max := b
else
max := c;
Writeln ('Bilangan terbesar: ',max);
End.
b. Contoh ke-dua
Program m3c2;
Uses wincrt;
Var
Masukan : real;
nilai : integer;
huruf : char;
ket : string;
Begin
Write ('Tuliskan nilai berbentuk angka: ');
Readln (Masukan);
nilai := (round(Masukan));
Case nilai of
81 .. 100:
Begin
huruf := 'A';
ket := 'Istimewa';
End;
61 .. 80:
Begin
huruf := 'B';
ket := 'Baik';
End;
41 .. 60:
Begin
huruf := 'C';
ket := 'Cukup';
End;
21 .. 40:
Begin
huruf := 'D';
ket := 'Kurang';
End;
0 .. 20:
Begin
huruf := 'E';
ket := 'GAGAL';
End
Else
Begin
huruf := '?';
ket := 'tidak ada (salah masukan angka)';
End;
End;
Writeln ('Nilai anda: ',huruf);
Writeln ('Tingkatan: ',ket);
End.
c. Contoh ke-tiga
Program m3c3;
Uses wincrt;
Var
a, b, c, x1, x2, d, xn : real;
Begin
Writeln ('Mencari akar persamaan kuadrat');
Write ('Masukkan nilai A, B, dan C: ');
Readln (a,b,c);
If a = 0 then Writeln ('Bukan persamaan kuadrat')
else
Begin
d := b * b - 4 * a * c;
If d > 0 then
Begin
Writeln ('Akarnya berbeda');
x1 := (-b + sqrt (d))/(2*a);
x2 := (-b - sqrt (d))/(2*a);
Writeln ('X1= ',x1:4:2,' X2= ',x2:4:2);
End
Else If d = 0 then
Begin
Writeln ('Akarnya kembar');
xn := -b / (2*a);
Writeln ('X1 = X2 = ',xn:4:2);
End
Else Writeln ('Akarnya imajiner');
End;
End.
d. Contoh ke-empat
Program m3c4;
Uses wincrt;
Var
gp, tjist, tjank, pjk, bersih : real;
gol, jumanak : byte;
status : char;
Begin
Writeln ('Penghitung Gaji');
Write ('Gaji pokok: '); Readln (gp);
Write ('Golongan (1/2/3): '); Readln (gol);
Write ('Menikah? '); Readln (status);
If (status = 'Y') or (status = 'y') then
Begin
tjist := 0.1 * gp;
Write ('Jumlah anak: '); Readln (jumanak);
If jumanak < 2 then
tjank := jumanak * 0.05 * gp
else
tjank := 0.1 * gp;
End
else
Begin
tjist := 0;
tjank := 0;
End;
If gol >2 then
pjk := 0.05 * gp
else
pjk := 0;
bersih := gp + tjist + tjank - pjk;
Writeln ('Gaji bersih: ',bersih:8:2);
End.
5. Tampilan Semua Program
Program pertama
Program ke-dua
Program ke-tiga
Program ke-empat
1. Latihan
a. Carilah nilai maksimal dari sejumlah bilangan masukan, cacah bilangan terserah Anda, dan harus berupa masukan dari luar program.
b. Pada contoh no.2, gantilah Case .. of dengan If .. then .. else. Aturan pemilihannya sama, dan harus menghasilkan keluaran yang sama.
Sejauh ini sudah paham???? Kalo belum paham maka pahamilah....ahahhahahah
ohhhh....yaaaa, kagak lucu kayaknya baca artikel ini tapi kagak punya software_nya buat praktek
Ummmm...bagi yang mau baca-baca sambil praktek DOWNLOAD DISINI
ohhhh....yaaaa, kagak lucu kayaknya baca artikel ini tapi kagak punya software_nya buat praktek
Ummmm...bagi yang mau baca-baca sambil praktek DOWNLOAD DISINI
wawwwwwwwww,,,,siiippp,,harus banyak blajar nie,,aqw kagak ngerti yg beginian,,hehehe,,,
ReplyDeleteahahhahhaha..blog bu evi juga gan mantaaappp
ReplyDeletexixixi,,apanya yg mantap..blum ada apa''nya kok,,pengen buat article yg siipp,,
ReplyDeleteMantap jaya POl-Polan,poko'e...ahahhaa
ReplyDelete