PENGENDALIAN PROGRAM
(IF…THEN..& CASE)
Apa yang disebut pengendalian program? Program
adalah perwujudan dari alogaritma yang ditulis dengan bahasa pemrograman, jadi
program harus dapat mencabang, meloncat juga berulang pada kondisi tertentu dan
sesuai kebutuhan tentunya. Nah dengan pengendalian
program kita dapat melakukan hal ini dan tiap-tiap bahasa program berbeda-beda.
- Perintah if..then
Digunakan untuk mewuudkan percabangan
bersyarat. Didalam pascal cara penggunaanya
sbb:
If then > else
<pernyataan2>
Kondisi
adalah suatu ekspresi yang bernilai logikal banar atau salah, Ingat! tipe data harus Boolean. Pernyataan1 adalah perintah jika
data input bernilai benar . Bagian else bersifat pilihan(boleh ada atau tidak) dan juga perintah jika data
input bernilai salah.

Berikut souce code-nya:
program est_ss_thendd;
{$APPTYPE
CONSOLE}
var
i,j:integer;
begin
write (‘Masukan
sebuah bilangan bulat :’);
readln(i);
write (‘masukan lagi
sebuah bilangan bulat :’);
readln(j);
readln;
if (iwriteln (i,’lebih kecil dari pada’,j)
else
write(i,’lebih
besar atau samadengan’,j);
readln;
end.
Maka hasilnya :

- Perintah Case
Perintah if.. then
tadi bisa digunakan bertinkat, sbb:
If <kondisi> then <pernyataan1>
Else if
<kondisi2> then <pernyataan2>
Else
if <kondisi3> then <pernyataan3>
Else ….
Bentuk diatas dapat disederhanakan
mendi perintah case, sbb:
Case <ekpresi> of
> : <penyataan1>
> : <penyataan2>
…
[else <penyataan_n>]
End;
Ekspresi
harus bertipe ordinal dan berada dalam jangkauan -32768 sampai 32767.
Tipe ordinal adalah tipe data yang mempunyai urutan tertentu dan pasti,
misalnya integer (…,-2,-1,0,1,2,..) atau karakter (‘a’,
’b’, ‘c’). Pilihan(n)
bersifat konstan dan baertipe sama dengan tipe data ekspresi.
Berikut
souce code-nya
program bilangan;
{$apptype console}
uses sysutils;
var i:integer;
begin
write(‘masukkan bilangan integer
antara 0 sampai 100 :’);
readln(i);
case i of
0,2,4,6,8 :writeln(‘bilangan grnap’);
1,3,5,7,9:writeln(‘bilangan ganjil’);
10..100 :writeln(‘antara 10 sampai100’);
else
write(‘bilangan negatif atau lebih besar dari 100’);
end;
readln;
readln;
end.
Maka
hasilnya:

Latihan!
program kartu_kredit;
{$APPTYPE
CONSOLE}
uses SYSUTILS;
var
harga: real;
const
limit=1000000;
begin
write (‘silahkan masukkan harga barang yang dibeli;’);
readln (harga);
if
harga <= limit then
begin
writeln (‘kartu kredit Anda diterima’);
writeln (‘harga yang harus dibayar ditambah pajak 20%
adalah ‘,harga*120/100:9:2)
end
else
begin
writeln (‘harga barang melebihi
limit kartu kredit
Anda’);
writeln (‘maksimum limit kartu kredit Anda adalah:’);
end;
writeln (‘terima kasih telah menggunakan program ini’);
writeln (‘tekan enter untuk keluar…..’);
readln;
end.
program diskon;
{$apptype
console}
uses sysutils;
var
a,b:real;
begin
write(‘masukkan harga barang : ‘);
readln(a);
if
a>100000 then b:=(a*85)/100
else if a>50000 then b:= (a*90)/100
else b:=a;
writeln(‘harga barang tersebut menjadi :’,b:10:2);
readln;
end.
program jumlah_hari;
{$APPTYPE
CONSOLE}
uses sysutils;
var
month,days,year:integer;
begin
write (‘please enter te number
of the month: ‘);
readln (month);
case month of
1,3,5,7,8,10,12:days:=31;
4,6,9,11:days:=30;
2:
begin
write (‘enter the
year: ‘);
readln (year);
if year mod 4=0
then days:= 29
else days:=28;
end;
else
writeln (‘Nama bulan
yang anda masukan salah’);
end;
writeln (‘there are ‘, days, ‘days in month.’);
readln;
end.
Balas