Struktur Kendali Aliran
Struktur Kendali Aliran
1
Latar Belakang
2
Macam-macam Statement
Struktur Kendali Aliran
1. IF … THEN …
2. IF … THEN … ELSE …
3. IF … THEN … (nested/tersarang)
4. CASE … OF
3
Struktur If … Then …
Bentuk dari struktur If-Then adalah sebagai berikut:
4
Bagan Alir If …. Then
If Kondisi benar
then
tidak
statemen
5
Contoh 1:
Program Nilai;
Var
NilaiUjian : real;
Ket : String[12];
Begin
Ket := ‘Tidak Lulus’;
Write (‘Nilai yang didapat ?’);
Readln (NilaiUjian);
If NilaiUjian > 60 Then Ket := ‘Lulus’;
Writeln (Ket);
Readln;
End.
6
Contoh 2
Program Magnitude;
Uses Crt;
var Angka, Angka1 : real;
begin
clrscr;
write (‘Ketikan sembarang bilangan ‘);
readln (Angka);
Angka1 := Angka;
If Angka < 0 then Angka := -1 * Angka;
Writeln (‘Magnitude dari ‘,Angka:5:2,’ adalah
= ‘, angka1:1:3);
Readln;
end.
7
Latihan 2
Program SILINDER;
Uses Crt;
Label 10;
var R, T, Isi : real;
Jawab : char;
Begin
clrscr;
10: writeln;
write (‘ Ketikkan jari-jari lingkaran alas ‘);
readln (R);
8
write (‘Ketikkan tinggi silinder ‘);
readln (T);
Isi := 3.14*R*R*T;
writeln;
writeln (‘Isi silinder tersebut adalah ‘,Isi:9:2);
writeln;
write (‘Anda ingin mengulangi lagi (Y/T) ?’);
readln (Jawab);
If (jawab = ‘Y’) or (jawab = ‘y’) then goto 10;
end.
9
b. Struktur If -Then …Else
10
Statemen 1 atau dapat berupa blok statemen akan
diproses bilamana kondisi yang diseleksi benar
(terpenuhi) sedang statemen 2 ataui dapat berupa
blok statemen akan diproses bilamana kondisi yang
diseleksi tidak tepanuhi.
11
salah Kondisi If benar
else then
statemen 2 statemen 1
12
Contoh 3:
Program Nilai;
Var
NilaiUjian : real ;
Begin
Write (‘Nilai yang didapat ?’); Readln (NilaiUjian);
If NilaiUjian > 60 Then
Writeln (‘Lulus’)
Else
Writeln (‘Tidak Lulus’);
Readln;
End.
13
Struktur If tersarang (nested)
14
Bentuk lainnya:
If Kondisi 1 Then
Begin
If Kondisi 2 Then
Statemen 1
Else
Statemen 2
End;
Statemen 3
15
Statemen Case-Of
16
Bentuk-bentuk statemen Case
17
Struktur Case - Of
18
bentuk umum statemen case, yaitu:
case ungkapan of
label 1: statemen 1;
label 2: statemen 2;
……………
label n: statemen n
end;
19
Perlu diingat bahwa semua kemungkinan nilai
ungkapan yang dihitung harus dinyatakan dalam
label kasus
Jika nilai ungkapan yang dihasilkan tidak terdapat
dalam label kasus, langkah yang akan diambil
oleh statemen case tidak terdifinisikan; hal ini
akan berakibat fatal.
20
Contoh:
Program NILAI_UJIAN;
Uses crt;
Var
Nama_Mahasiswa : string[25];
Nomor_induk : string[5];
Skor : Integer;
Indeks_skor : Integer;
begin textbackground (4);
clrscr;
write (‘Ketikkan nama mahasiswa :’);
readln (Nama_Mahasiswa);
21
write (‘Ketikkan nomor induk mahasiswa :’);
readln (Nomor_Induk);
write (‘Ketikkan nilai ujian : (0 … 100) ’);
readln (Skor); writeln;
Indeks_Skor := Skor div 20;
case Indeks_Skor of
4,5 : writeln(‘Nilai yang diperoleh A’);
3 : writeln(‘Nilai yang diperoleh B’);
2 : writeln(‘Nilai yang diperoleh C’);
1 : writeln(‘Nilai yang diperoleh D’);
0 : writeln(‘Nilai yang diperoleh E’);
end;
End.
22
Latihan 1:
Program DISKON;
var Pembelian, Potongan : Integer;
begin
Write (‘Total Pembelian ’);
readln (Pembelian);
Case Pembelian of
0..1000 : Potongan := 100;
1001 ..10000 : Potongan := 500;
10001..30000 : Potongan := 2000;
end;
23
writeln (‘Jumlah Pembelian = Rp ‘, Pembelian:7);
Writeln (‘Potongan = Rp ’, Potongan:7);
Writeln(‘ -------------------’);
writeln (‘Jumlah Bayar = Rp ‘,Pembelian –
Potongan:7);
End.
24
Perbedaar If - Then dengan Case - Of
25
Struktur Case - Of …. Else
26