perbedaan antara struktur “ repeat until “ dengan “
while do “ adalah :
1. Paling sedikit statemen-statemen dalam repeat
until diproses sekali, karena seleksi kondisi ada pada statemen until yang
terletak dibawah.
2. Pada while do paling sedikit dikerjakan nol kali,
karena seleksi kondisi ada pada statemen while yang terletak diatas, sehingga
apabila kondisi tidak terpenuhi maka tidak akan masuk ke dalam lingkungan
perulangannya.
3. Pada repeat until dapat tidak menggunakan blok
statemen ( BEGIN dan END ) untuk menunjukan batas perulangannya, karena batas
perulangannya sudah ditunjukkan oleh repeat sampai dengan until.
contoh perulangan dengan repeat...until:
var
i : integer;
i : integer;
begin
i := 10;
repeat
write(i);
writeln(' Turbo Pascal');
inc(i);
until i > 5;
end.
i := 10;
repeat
write(i);
writeln(' Turbo Pascal');
inc(i);
until i > 5;
end.
contoh perulangan dengan while-do:
var
i : integer;
i : integer;
begin
i := 10;
while i < 5 do
begin
write(i);
writeln(' Turbo Pascal');
inc(i);
end;
end.
i := 10;
while i < 5 do
begin
write(i);
writeln(' Turbo Pascal');
inc(i);
end;
end.
Kedua script diatas sengaja dibuat nilai awal
yang tidak memenuhi kondisi pada tiap perulangan, baik repeat...until maupun
while-do. Jika kedua script diatas dijalankan maka script dengan perulangan
while-do tidak akan menampilkan hasil apapun, sementara script dengan
perulangan repeat...until tetap akan menjalankan statement program minimal satu
kali, dan menampilkan hasil seperti ini: 10 Turbo Pascal
Perulangan repeat-until
Perulangan repeat-until dibawah ini tidak dapat
digunakan pada perulangan while-do
Hasilnya
Penjelasan
program di atas adalah sebagai berikut :
Bentu
umum pernyataan REPEAT adalah :
Repeat
Pernyataan
Until
- kondisi
Notasi
ini mendasarkan pengulangan pada kondisi Boolean. Pernyataan di dalam badan
kalang ( berisi dua instruksi yaitu, Jumlah := jumlah + I dan I := I + 1 )
Akan
terus di ulang- ulang sampai kondisi bernilai true. Dengan kata lain, jika
kondisi masih false (belum terpenuhi), proses pengulangan masih akan terus di
lakukan.
Untuk
lebih jelasnya telitilah :
Repeat
Jumlah
:= jumlah + I ; { jumlah deret
sekarang }
I
:= I + 1; { suku deret berikutnya }
Until
I > x;
Writeln
('Jumlah deret = ', Jumlah );
I
harus terdefinisi nilainya sebelum pengulangan di laksanakan pertama kali. Oleh
karena itu, pada bagian inisiasi, I diisi dengan nilai 1 yang menandakan ia
adalah suku deret pertama. Untuk lebih jelasnya perhatikan di bawah
Write
('Berapa x ?') ; readln (x) ;
Jumlah:=
0; { jumlah deret pertama }
I:=
1; { karena bernilai 1, ini adalah
suku deret yang pertama}
Repeat
Instruksi
yang mengubah nilai peubah kondisi adalah pernyataan ( Jumlah := jumlah + I dan
I := I + 1).Pernyataan ini mencacah jumlah pengulangan, sehingga jika I > x,
pengulangan di hentikan.
Karena
proses pengulangan suatu saat harus berhenti, maka di dalam badan pengulangan
harus ada pernyataan yang mengubah nilai perubah kondisi ( I > x ) =>
pengulangan berhenti.
Perulangan
while-do
Perulangan
while-do dibawah ini tidak dapat digunakan pada perulangan repeat-until
Hasilnya
Pernyataan While – do atau lebih sederhananya
dikenal dengan pernyataan while yang mengeksekusi pernyataan lain selama
beberapa kondisi bernilai true
Perbedaannya jika while-do penyeleksiannya di awal,
maka repeat-until diakhir dan repeat-until tidak perlu blok statement karena
akhir statement sudah ditentukan yaitu pada Until
Tidak ada komentar:
Posting Komentar