REPEAT – UNTIL DAN WHILE-DO
Digunakan
untuk mengulang (repeat) statement-statement atau blok statement sampai (until)
kondisi yang diseleksi di Until tidak terpenuhi. Sintaks dari statement ini
bila digambarkan dalam bentuk diagram akan berbentuk :
Bentuk
Umum : REPEAT sequence statement UNTIL
condition
Bentuk
Proses (flow chart) :
|
digit := 1;
REPEAT
write (digit);
digit := digit + 1
UNTIL digit > 5 ;
Contoh :
Var
I : integer;
Begin
I := 0;
Repeat
I := I + 1;
Writeln(I);
Until I = 5;
End.
Hasilnya:
1
2
3
4
5
Perbedaan antara struktur REPEAT-UNTIL
dengan WHILE-DO adalah sebagai berikut :
1. Paling sedikit
statement-statement di dalam perulangan REPEAT-UNTIL diproses sekali, karena
seleksi kondisi ada pada statement Until yang terletak dibawah. Sedang pada
struktur WHILE-DO paling sedikit dikerjakan nol kali, karena seleksi kondisi
ada apada statement While yang terletak diatas, sehingga kalau kondisi sudah
tidak terpenuhi, maka tidak akan masuk ke dalam lingkungan perulangan.
2. Pada REPEAT-UNTIL
dapat tidak dipergunakan blok statement (tidak diperlukan Begin dan End untuk
menunjukkan batas perulangannya), karena batas perulangannya sudah ditunjukkan
oleh Repeat sampai dengan Until (Repeat dan Until sebagai pengganti Begin dan
End).
Struktur FOR
Digunakan
untuk mengulang statement atau satu blok statement berulang kali sejumlah yang
ditentukan.
Sintaks dari statement For dalam bentuk diagram
adalah sebagai berikut :
Bentuk
Umum :
a.
FOR id := v1 TO v2 DO statement
b.
FOR id := v1 DOWNTO v2 DO statement
Bentuk Proses :
Contoh : (dari persoalan diatas)
FOR i := 1 to 20 DO write(i);
FOR I := 20 DOWNTO 20 DO
write(i);
Contoh :
Var I : integer;
Begin
For I := 1 to 5 Do
Writeln(‘Pascal’);
End.
Hasilnya : Pascal
Pascal
Pascal
Pascal
Pascal
Penjelasan :
Berarti statement WriteLn(‘Pascal’)
akan diulang sebanyak 5 kali, yaitu dengan penghitung I dari nilai awal 1
sampai dengan nilai akhir 5.
Contoh :
Penulisan
statement yang akan diproses berulang kali tersebut dapat juga ditulis dalam
bentuk blok statement (diawali dengan Begin dan diakhiri dengan And), walaupun
hanya berisi sebuah statement saja, sebagai berikut :
Var
I : integer;
Begin
For I := 1 to 5 Do
Begin
WriteLn(‘Pascal’);
End;
End.
Contoh :
Var Celcius :
integer;
Fahrenheit : REAL;
Begin
WriteLn(‘---------------------------‘);
WriteLn(‘Celcius Fahrenheit’);
WriteLn(‘---------------------------‘);
Celcius := 0;
For Celcius := 5 DownTo
0 Do
Begin
Fahrenheit
:= 1.8 * Celcius + 32;
WriteLn(Celcius:8,Fahrenheit:14:2);
End;
WriteLn(‘----------------------------‘);
End.
Hasilnya :
---------------------------
Celcius Fahrenheit
---------------------------
5 41.00
4 39.00
3 37.40
2 35.60
1 33.80
0 32.00
0 komentar:
Posting Komentar
Please Leave Your Comment :)