PERULANGAN

Bahasa pemrograman menyediakan berbagai struktur kontrol yang memungkinkan jalur eksekusi yang lebih rumit. Pernyataan perulangan (loop) memungkinkan kita untuk mengeksekusi pernyataan atau kelompok pernyataan beberapa kali. Berikut ini adalah bentuk umum dari pernyataan loop yang digunakan pada sebagian besar bahasa pemrograman.

Gambar. Diagram perulangan

Pernyataan perulangan atau Loop yang digunakan dalam pemrograman Arduino yang berbasis bahasa C adalah sebagai berikut.

  • while loop
  • do…while loop
  • for loop
  • Nested Loop
  • Infinite loop
  • Perulangan while

Perulangan while (while loop) akan berulang terus menerus, dan tanpa batas, sampai ekspresi di dalam tanda kurung, () menjadi bernilai salah. Dengan demikian, maka harus ada sesuatu yang mengubah variabel yang diuji, jika tidak maka perulangan while tidak akan pernah selesai/keluar.

Sintak penulisan Perulangan while

[sourcecode lang="plain"]
while(ekspresi) {
Blok Pernyataan;
}
[/sourcecode]

Urutan eksekusi perulangan while dapat dilihat pada gambar di bawah ini.

Gambar. Diagram perulangan while

  • Perulangan do … while

Perulangan do … while (do … while loop) mirip dengan perulangan while. Pada perulangan while, kondisi kelanjutan perulangan diuji pada awal perulangan sebelum menjalankan tubuh perulangan. Pernyataan do… while menguji kondisi kelanjutan perulangan setelah menjalankan tubuh perulangan. Karena itu, tubuh perulangan akan dieksekusi setidaknya sekali.

Ketika do … while berakhir, eksekusi berlanjut dengan pernyataan setelah klausa while. Tidak perlu menggunakan tanda kurung pada bagian pernyataan do … while jika hanya ada satu pernyataan pada bagian tubuhnya. Namun, tanda kurung biasanya disertakan untuk menghindari kebingungan antara pernyataan while dan pernyataan do … while.

Sintak penulisan perulangan do … while

[sourcecode lang="plain"]
do {
    blok pernyataan;
}
while (ekspresi);
[/sourcecode]
  • Perulangan For

Perulangan for (for loop) mengeksekusi pernyataan-pernyataan yang telah ditentukan beberapa kali. Ekspresi kontrol untuk perulangan diinisialisasi, diuji dan dimanipulasi seluruhnya dalam kurung perulangan for. Sangat mudah untuk men-debug perilaku looping struktur karena tidak tergantung pada aktivitas di dalam perulangan (loop).

Artike Lainnya  Cara memperbaiki layar laptop gelap setengah

Masing-masing perulangan for memiliki hingga tiga ekspresi, yang menentukan operasinya. Contoh berikut menunjukkan sintaks perulangan for yang umum. Perhatikan bahwa tiga ekspresi dalam tanda kurung argumen loop dipisahkan dengan titik koma.

[sourcecode lang="plain"]
for ( initialize; control; increment or decrement) {
   // blok pernyataan
}
[/sourcecode]
[sourcecode lang="plain"]
for(counter = 2;counter <= 9;counter++) {
   //blok pernyataan2 akan dieksekusi dalam 10 kali
}
[/sourcecode]

Urutan ekskusi perulangan for ditunjukkan pada gambar di bawah ini

Gambar. Diagram perulangan for

  • Perulangan Bersarang (Nested Loop)

Bahasa pemrograman C sebagai basic pemrograman Arduino, memungkinkan pengguna untuk menggunakan satu perulangan (loop) di dalam perulangan lain (perulangan bersarang). Konsep ini dapat digambarkan oleh sintaks dan contoh berikut ini.

Sintaks Perulangan Bersarang

[sourcecode lang="plain"]
for ( initialize ;control; increment or decrement) {
   // blok pernyataan
   for ( initialize ;control; increment or decrement) {
   // blok pernyataan
  }
}
[/sourcecode]

Contoh penggunaan perulangan bersarang.

[sourcecode lang="plain"]
for(counter = 0;counter <= 9;counter++) {
   //blok pernyataan2 akan dieksekusi 10 kali
   for(i = 0;i <= 99;i++) {
  //blok pernyataan2 akan dieksekusi 100 kali
   }
[/sourcecode]
  • Perulangan Tak Berhingga (Infinite Loop)

Perulangan atau loop ini tidak memiliki kondisi berhenti, sehingga perulangan ini menjadi tak berhingga.

Sintaks Penulisan Perulangan Tak Berhingga

  • Menggunakan Perulangan for
[sourcecode lang="plain"]
for (;;) {
  // blok pernyataan
}
[/sourcecode]
  • Menggunakan Perulangan while
[sourcecode lang="plain"]
while(1) {
   // blok pernyataan
}
[/sourcecode]
  • Menggunakan Perulangan do…while

[sourcecode language="plain"]</code>

do {
Blok pernyataan-pernyataan; 
} 
while(1);

<code>[/sourcecode]