Statement FOR



Statement FOR merupakan salah satu statement yang dapat digunakan untuk menyatakan proses yang diulang-ulang atau looping. Suatu saat looping itu harus berhenti karena tidak mungkin tidak pernah berhenti. Berdasarkan hal tersebut, terdapat dua kondisi yang dapat menghentikan looping tersebut. Coba perhatikan 2 pernyataan sehari-hari berikut ini:
  • Hari ini saya makan bakso 10 kali
  • Hari ini saya terus makan bakso sampai saya kenyang.

Kedua pernyataan di atas sama-sama mengandung proses yang diulang-ulang yaitu ‘makan bakso’. Namun proses ‘makan bakso’ dari kedua pernyataan tersebut berbeda cara berhentinya. Pernyataan pertama menunjukkan bahwa ‘makan bakso’ akan diulang-ulang sampai dengan 10 kali. Setelah sampai 10 kali, maka ‘makan bakso’ ini akan berhenti. Sedangkan pernyataan yang kedua, dalam hal ini jumlah berapa kali makan bakso tidak diketahui, namun yang diketahui hanyalah syarat kapan perulangan ini akan berhenti yaitu ketika ‘sudah kenyang’.

Kedua bentuk looping berdasarkan kapan berhentinya di atas diadopsi ke dalam konsep pemrograman. Dalam pemrograman, khususnya PHP, nantinya juga akan dijumpai bentuk-bentuk perulangan tersebut. Untuk menyatakan looping yang telah diketahui jumlah perulangannya, kita bisa menggunakan statement FOR atau WHILE. Sedangkan bila perulangannya tidak diketahui jumlah perulangannya atau hanya diketahui kondisi kapan dia harus berakhir maka bisa digunakan WHILE. Sintaks statement FOR adalah sebagai berikut

for (variabel = nilaiawal; variabel operatorlogika nilaiakhir; increment)
{
Proses yang diulang
}

Variabel yang digunakan pada FOR di atas, dinamakan variabel counter atau pencacah.
Contoh: Script berikut ini akan menghasilkan teks heading mulai dari heading 1, 2 s/d 5.

<?php
$teks = "Hello World";
for ($a = 1; $a <= 5; $a++)
{
echo "<h".$a.">".$teks."</h".$a.">";
}
?>

Pada for di atas, variabel counternya dalam hal ini adalah $a. Nilai $a ini memiliki nilai awal sama dengan 1. Selanjutnya operator increment (kenaikan) yang digunakan adalah $a++ atau $a = $a + 1 (kenaikannya satu) dan nilai akhir untuk $a adalah sama dengan 5. Perhatikan proses loopingnya sebagai berikut:
  • $a = 1 dalam hal ini masih memenuhi kondisi ($a <= 5), sehingga lakukan echo "<h".$a.">".$teks."</h".$a.">"; atau mencetak "<h1>Hello World</h1>"
  • $a = 2 dalam hal ini masih memenuhi kondisi ($a <= 5), sehingga lakukan echo "<h".$a.">".$teks."</h".$a.">"; atau mencetak "<h2>Hello World</h2>"
  • $a = 3 dalam hal ini masih memenuhi kondisi ($a <= 5), sehingga lakukan echo "<h".$a.">".$teks."</h".$a.">"; atau mencetak "<h3>Hello World</h3>"
  • $a = 4 dalam hal ini masih memenuhi kondisi ($a <= 5), sehingga lakukan echo "<h".$a.">".$teks."</h".$a.">"; atau mencetak "<h4>Hello World</h4>"
  • $a = 5 dalam hal ini masih memenuhi kondisi ($a <= 5), sehingga lakukan echo "<h".$a.">".$teks."</h".$a.">"; atau mencetak "<h5>Hello World</h5>"
  • $a = 6 dalam hal ini sudah tidak memenuhi kondisi ($a <= 5), sehingga perulangan berhenti.

Catatan: Operator increment tidak harus menggunakan kenaikan 1. Nilai awal variabel counter tidak harus dimulai dari 1, tapi boleh dari bilangan yang lain.

FOR di dalam FOR (nested FOR)

Statement FOR dapat terletak di dalam sebuah FOR, seperti contoh berikut ini

<?php
for ($a = 1; $a <= 3; $a++)
{
for ($b = 1; $b <= 2; $b++)
{
echo "Nilai a = ".$a. " Nilai b = ".$b. "<br />";
}
}
?>

Proses yang terjadi pada script di atas adalah sbb:
  • $a = 1 (masih memenuhi $a < =3), maka lakukan for yang terletak di dalam
    • $b = 1 (masih memenuhi $b <= 2) maka cetak "Nilai a = 1 Nilai b = 1"
    • $b = 2 (masih memenuhi $b <= 2) maka cetak "Nilai a = 1 Nilai b = 2"
    • $b = 3 (tidak memenuhi $b <= 2), maka STOP
  • $a = 2 (masih memenuhi $a <= 3), maka lakukan for yang terletak di dalam
    • $b = 1 (masih memenuhi $b <= 2) maka cetak "Nilai a = 2 Nilai b = 1"
    • $b = 2 (masih memenuhi $b <= 2) maka cetak "Nilai a = 2 Nilai b = 2"
    • $b = 3 (tidak memenuhi $b <= 2), maka STOP
  • $a = 3 (masih memenuhi $a <= 3), maka lakukan for yang terletak di dalam
    • $b = 1 (masih memenuhi $b <= 2) maka cetak "Nilai a = 3 Nilai b = 1"
    • $b = 2 (masih memenuhi $b <= 2) maka cetak "Nilai a = 3 Nilai b = 2"
    • $b = 3 (tidak memenuhi $b <= 2), maka STOP
  • $a = 4 (tidak memenuhi $a <= 3), maka STOP

Tugas

Buatlah script PHP untuk menampilkan bilangan bulat 5 s/d 100 yang berkelipatan 10 Konsep untuk menampilkan bilangan bulat tersebut kita bisa menggunakan looping. Looping dimulai dari bilangan 5, 6, 7, dst sampai dengan 100. Untuk setiap bilangan nantinya dicek apakah termasuk kelipatan 10 atau tidak (gunakan IF). Jika bilangan tersebut merupakan kelipatan 10, maka  ditampilkan. Sedangkan jika tidak, maka abaikan.

Tidak ada komentar:

Posting Komentar