statement ini digunakn untuk melakukan proses seleksi pada suatu kondisi yang memiliki kondisi lebih dari satu. bentuk statement CASE . . OF ini adalah :
CASE
<
.............
ELSE
END;
pada statement
Catatan : ELSE dan
harus dijalankan jika < syarat pemilih > tidak ada yang memenuhi semua
B. Statement Perulangan (Looping) REPEAT . . UNTIL
REPEAT . . UNTIL mempunyai kegunaan yang hampir sama dengan WHILE . . DO yaitu untuk melakukan proses perulangan sampai pada batas yang telah ditentukan. Jumlah yang dilakukan belum diketahui , namun yang pasti, perulangan terus dilakukan selama belum memenuhi syarat/batas yang ditentukan.
Bentuk pernyataan REPEAT . . UNTIL :
REPEAT
< pernyataan >
UNTIL
C. Contoh Program
program Cabang_Looping;
uses crt;
var
S, P, L, Lp, Lpp, Kp, Kpp : real;
Menu1, Menu2, Menu3 : integer;
key : char;
begin
Clrscr;
Repeat
writeln;
writeln ('===========================');
writeln ('MENU PROGRAM');
writeln ('1. MENGHITUNG LUAS');
writeln ('2. MENGHITUNG KELILING');
writeln ('3. KELUAR');
writeln ('===========================');
write ('Pilih Menu : '); readln (Menu1);
Case Menu1 of
1 : begin
repeat
writeln;
writeln ('============================');
writeln ('MENU MENGHITUNG LUAS');
writeln ('1. LUAS PERSEGI');
writeln ('2. LUAS PERSEGI PANJANG');
writeln ('3. KEMBALI KE MENU PROGRAM');
writeln ('============================');
write ('Pilih Menu : '); readln (Menu2);
Case Menu2 of
1 : begin
repeat
Writeln;
writeln ('LUAS PERSEGI');
write ('Masukkan Panjang Sisi : '); Readln(s);
Lp := S * S;
writeln ('Luas persegi : ', Lp:4:1);
Write ('Mau Ulang Lagi [Y/N]?'); Readln (key);
until upcase(key) = 'N';
end;
2 : begin
repeat
Writeln;
writeln ('LUAS PERSEGI PANJANG');
write ('Masukkan Panjang : '); readln(P);
write ('Masukkan Lebar : '); readln(L);
Lpp := P * L;
writeln ('Luas Persegi Panjang : ', Lpp:4:1);
Write ('Mau Ulang Lagi [Y/N]?'); readln(key);
until upcase(key) = 'N';
end;
3 : begin
writeln ('Terima Kasih');
end;
else writeln ('Angka yang anda masukkan salah');
end;
readln;
until Menu2=3;
end;
2 : begin
repeat
writeln;
writeln ('=============================');
writeln ('MENU MENGHITUNG KELILING');
writeln ('1. KELILING PERSEGI');
writeln ('2. KELILING PERSEGI PANJANG');
writeln ('3. KEMBALI KE MENU PROGRAM');
writeln ('=============================');
write ('Pilih Menu : '); readln (Menu3);
case menu3 of
1 : begin
repeat
writeln;
writeln ('KELILING PERSEGI');
write ('Masukkan Panjang Sisi : '); Readln(S);
Kp := 4 * S;
writeln ('Keliling Persegi : ', Kp:4:1);
write ('Mau Ulang Lagi [Y/N]?'); readln (key);
until upcase(key) = 'N';
end;
2 : begin
repeat
writeln;
writeln ('KELILING PERSEGI PANJANG');
write ('Masukkan Panjang : '); readln (P);
write ('Masukkan Lebar : '); readln (L);
Kpp := 2 * (P + L);
writeln ('Keliling Persegi Panjang : ', Kpp:4:1);
write ('Mau Ulang Lagi [Y/N]?'); readln (key);
until upcase(key) = 'N';
end;
3 : begin
writeln ('Terima Kasih');
end;
else writeln ('Maaf Angka Yang Anda Masukkan Salah');
readln;
end;
until Menu3 = 3;
end;
3 : writeln ('Terima Kasih');
else writeln ('Maaf Angka Yang Anda MAsukkan Salah');
end;
readln;
until Menu1 = 3;
end.
0 komentar:
Posting Komentar