Blok pengulangan ini sebenarnya mirip dengan pengulangan while,perbedaannya
hanya pada jenis ini pengulangan akan terus dilakukan apabila kondisi yg
didefinisikan masih bernilai false,jadi dengan kata lain pengulangan dihentikan
jika kondisi bernilai true. Juga dalam pengulangan repeat, kondisi ditulis
di akhir blok.
Bentuk umumnya seperti ini:
Bentuk umumnya seperti ini:
repeat
statemen;
...
until (kondisi);
sebagai bahan perbandingan dengan jenis-jenis pengulangan sebelumnya,kita lihat saja contoh programnya dibawah ini:
program statemenrepeat1;
uses wincrt;
var i:integer;
begin
{inisialisasi nilai indeks i dengan 1}
i:=1;
{melakukan pengulangan}
repeat
writeln('Coba Perulangan');
i:=i+1;
until (i < 5);
end.
lihat contoh lainnya dalam pengulangan repeat
program statemenrepeat2;
uses wincrt;
var
a:integer;{variabel utk mnympan bil pertama}
b:integer;{variabel utk mnympan bil kedua}
sisabagi:integer;{var utk mnympn sisabagi}
temp:integer;{var utk bantu proses
pertukaran}
begin
write('Masukan bilangan pertama');readln(a);
write('Masukan bilangan kedua');readln(b);
{memastikan nilai a <
b & melakukan pertukaran}
if (a < b) then begin
temp:=a;
a:=b;
b:=temp;
end;
{melakukan pengulangan}
repeat
sisabagi:= a mod b;
a:=b;
b:=sisabagi;
until (sisabagi = 0);
{menampilkan hasil
perhitungan}
writeln;
writeln('Pembagi bersama terbesar = ', a);
end.
1
2
3
4
5
6
7
8
9
10
11
|
var
i
: integer;
begin
i
:= 1;
repeat
write(i);
writeln('
Turbo Pascal');
inc(i);
until i > 5;
end.
|
Bila program dijalankan
maka akan didapatkan hasil:
Turbo Pascal
Turbo Pascal
Turbo Pascal
Turbo Pascal
Turbo Pascal
Beberapa hal yang
perlu diperhatikan dalam perulangan repeat until adalah:
1. Paling sedikit
statement didalam perulangan diproses sekali, karena seleksi kondisi pada
statement until yang terletak dibawah. Jadi walaupun kondisi awal sudah tidak
sesuai dengan kondisi statement until, tapi blok statement setelah repeat tetap
akan dikerjakan hingga statement until.
2. Pada repeat...until
dapat tidak menggunakan blok statement (tidak diperlukan begin dan end untuk
menunjukkan batas perulangannya), karena batas perulangannya telah ditunjukkan
mulai Repeat sampai Until (Jadi Repeat dan Until merupakan pengganti begin dan
end). Kalaupun ditambahkan blok statement begin dan end didalam perulangan
repeat...until, hasilnya akan sama saja dengan tanpa menggunakan begin dan end.
Untuk dapat lebih memahami maksud dari
pernyataan diatas, bisa kita lihat contoh perbedaan penggunaan perulangan
repeat...until dengan perulangan while-do:
contoh perulangan dengan repeat...until:
1
2
3
4
5
6
7
8
9
10
11
|
var
i
: integer;
begin
i
:= 10;
repeat
write(i);
writeln('
Turbo Pascal');
inc(i);
until i > 5;
end.
|
contoh perulangan
dengan while-do:
1
2
3
4
5
6
7
8
9
10
11
12
|
var
i
: integer;
begin
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
Dari contoh diatas
semoga kita bisa memahami perbedaan penggunaan repeat...until dan while-do.
Struktur Perulangan repeat...until
tersarang
Sama seperti
perulangan lainnya, struktur perulangan repeat...until tersarang adalah suatu
perulangan repeat...until yang berada didalam perulangan repeat...until
lainnya.
contoh:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
|
var
i,
j : integer;
begin
i
:= 1;
repeat
j
:= 1;
repeat
write(j,
' ');
inc(j);
until j > 5;
writeln;
inc(i);
until i > 5;
end.
|
Bila program
dijalankan, maka akan dihasilkan:
1 2 3 4 5
1 2 3 4 5
1 2 3 4 5
1 2 3 4 5
1 2 3 4 5
Related Articel:
Turbo Pascal
- [Turbo Pascal] Pengurutan Bilangan
- [Turbo Pascal] Menghitung Bilangan Ganjil dan Genap
- [Turbo Pascal] Perulangan Dengan Repeat Until
- [Turbo Pascal] Perbedaan Char dan String
- [Turbo Pascal] Program Pencarian Indeks Bilangan
- [Turbo Pascal] Program dengan menggunakan menu pilihan
- [Turbo Pascal] Program Menghitung Tahun Kabisat dan Non-Kabisat
- [Turbo Pascal] Menghitung Nilai Rata-rata dengan While..Do
- [Turbo Pascal] Program Sederhana Menghitung Gaji Pegawai
- [Turbo Pascal] Contoh sederhana penggunaan FOR TO DO
- [Turbo Pascal] Contoh Sederhana Penggunaan Case Of
- [Turbo Pascal] Program Data Mahasiswa dengan Type Data Terstruktur
- [Turbo Pascal] Program Kasir
- [Turbo Pascal] Menghitung banyaknya huruf Vokal
- [Turbo Pascal] Program Segitiga Pascal
- [Turbo Pascal] Input data yang tidak sama
- [Turbo Pascal] Program KRS Mahasiswa
- [Turbo Pascal] Menghitung huruf
- [Turbo Pascal] Program membaca nilai berpasangan
- [Turbo Pascal] Contoh Prosedur dengan Parameter Variabel
- [Turbo Pascal] Mencari Pangkat Dan Faktorial
- [Turbo Pascal] Mencari Nilai Minimal Dengan Array
- [Turbo Pascal] Mencari Nilai Maksimal Dengan Array
- [Turbo Pascal] Mencari Modus Dari Bilangan
- [Turbo Pascal] Menentukan Ganjil & Genap
0 komentar:
Posting Komentar