Jump to content

Perulangan WHILE DO dalam Pascal

From Wiki

Perulangan FOR DO dan FOR DOWNTO DO yang saya bahas sebelum ini cocok untuk kondisi dimana kita sudah tahu berapa banyak perulangan yang ingin dijalankan. Dalam FOR DO, nilai awal perulangan dan nilai akhir sudah harus ditulis di awal kode program.

Untuk situasi dimana jumlah perulangan belum bisa dipastikan, kita bisa menggunakan perulangan WHILE DO atau REPEAT UNTIL. Dalam tutorial kali ini saya akan fokus kepada WHILE DO.

Berikut format dasar penulisan perulangan WHILE DO dalam bahasa pemrograman PASCAL:

WHILE (condition) DO
begin
  (kode program yang ingin diulang disini...)
  (kode program untuk mengubah condition..)
end;

Kunci dari perulangan WHILE DO ada di condition dan kode program untuk mengubah condition. Condition bisa dikatakan sebagai syarat agar perulangan bisa dijalankan. Selama syarat ini terpenuhi (bernilai TRUE), perulangan akan terus dijalankan. Jika syarat ini tidak terpenuhi (bernilai FALSE), perulangan tidak akan berjalan.

Program Perulangan WHILE DO dalam Pascal

Contoh 1

program while_do;
uses crt;
var
  i: integer;
begin
  clrscr;
  i:= 0;
 
  while i < 10 do
    begin
      writeln('Hello World');
      i:= i + 1;
    end;
     
  readln;
end.

Pada awal program, kita membuat variabel i yang berfungsi sebagai variabel counter. Sebelum perulangan, kita memberikan nilai 0 untuk i. Setelah itu kita masuk ke perulangan WHILE DO.

Baris program while i < 10 do adalah awal dari perulangan. Inilah kondisi atau syarat yang harus dipenuhi supaya perulangan bisa diproses. Ketika kode program jalan pertama kali, nilai variabel i adalah 0, artinya kondisi i < 10 menghasilkan nilai TRUE. Karena tentu saja 0 kurang dari 10.

Karena syarat di penuhi, blok begin hingga end; segera di eksekusi. Baris pertama adalah writeln(‘Hello World’). Ini digunakan untuk menampilkan teks ‘Hello World’. Tidak ada masalah.

Baris berikutnya kita membuat i:= i + 1. Bagian ini dikenal juga sebagai increment, artinya kita ingin menambah nilai variabel counter i sebanyak 1 angka. Ini dilakukan supaya bisa mengubah kondisi i < 10 yang terdapat di awal perulangan. Jika ini tidak ditulis, perulangan tidak akan pernah berhenti (infinity loop).

Sampai disini, kode program akan kembali ke awal dan mengecek apakah i < 10? Ingat, variabel i sekarang sudah bernilai 1. 1 < 10 = benar (TRUE), kembali jalankan writeln(‘Hello World’), yang diikuti dengan i:= i + 1. Karena 1 + 1 = 2, varibel i sekarang bernilai 2.

Kode program kembali ke awal dan mengecek apakah i < 10? Sekarang nilai i adalah 2, dan 2 masih kurang dari 10, 2 < 10 = benar (TRUE), sekali lagi kode blok perulangan akan dijalankan.

Proses seperti ini terus berlangsung sampai kondisi i < 10 menghasilkan FALSE. Kapan kondisi ini terjadi? Yakni ketika variabel i = 10. 10 < 10 adalah FALSE. Artinya, perulangan WHILE DO akan dijalankan sebanyak 10 kali, dimana dalam setiap perulangan, nilai i akan menaik mulai dari 0, 1, 2, 3, 4, 5, 6, 7, 8, hingga 9.

Agar konsep perulangan ini bisa lebih paham, silahkan anda bayangkan (kalau perlu ditulis), bagaimana nilai variabel counter i bisa naik dari 1 sampai 9, dan pada setiap kenaikan perulangan akan menampilkan teks ‘Hello World’.

Contoh 2

program while_do;
uses crt;
var
  i: integer;
begin
  clrscr;
  i:= 0;
 
  while i < 10 do
    begin
      writeln('Variabel i sekarang bernilai: ',i);
      i:= i + 1;
    end;
  readln;
end.

Kondisi perulangan WHILE DO yang kita pakai sama persis seperti sebelumnya. Hanya saja kali ini perintah yang dijalankan pada setiap perulangan adalah writeln(‘Variabel i sekarang bernilai: ‘,i). Ini akan membantu kita melihat nilai variabel counter i yang terus bertambah 1 selama perulangan dijalankan.

Terkait

Source