Kapan Digunakan Looping FOR dan WHILE?
September 15th, 2008 | by rosihanari |
Cetak Artikel Ini
“Pak… kapan kita harus menggunakan looping menggunakan FOR dan WHILE? ” Itulah pertanyaan yang sering dilontarkan mahasiswa yang baru mengambil matakuliah pemrograman dasar. Sebuah pertanyaan yang logis apabila dilontarkan mereka yang baru mengenal pemrograman dasar.
Dalam artikel ini akan saya coba kupas secara tuntas mengenai kapan kita menggunakan looping FOR dan WHILE, serta apa sih perbedaannya.
Looping adalah sesuatu proses yang dikerjakan secara berulang-ulang. Dalam pemrograman, looping ini harus berhenti pada suatu keadaan tertentu. Apa akibatnya jika tidak berhenti? Ya… bisa-bisa komputernya hang karena mengerjakan sesuatu yang tidak pernah berhenti, bila memorinya penuh dengan task yang diproses.
Secara umum, ada 2 hal yang dapat digunakan untuk menghentikan looping (stopping condition), yaitu:
- Berdasarkan jumlah looping, artinya looping akan berhenti setelah mencapai jumlah perulangan tertentu
- Berdasarkan syarat tertentu, artinya looping akan berhenti bila telah terpenuhinya suatu syarat/kondisi.
Agak bingung ya… OK, saya buat simpel saja dalam memahaminya dengan memberikan contoh dalam keseharian kita. Perhatikan dua kalimat ini:
- Saya akan terus makan bakso sampai habis 10 mangkuk
- Saya akan terus makan bakso sampai saya merasa kenyang
Nah… apabila kita lihat kalimat pertama, jelas bahwa proses ‘makan bakso’ ini belum akan selesai bila belum habis 10 mangkuk, artinya proses makan bakso ini akan terus diulang sampai dengan 10 kali. Setelah itu selesai.
Sekarang kita lihat kalimat kedua. Untuk kalimat ini, kita tidak mengetahui berapa kali makan baksonya, atau habis berapa mangkuk. Yang jelas disini hanya diketahui kapan perulangan makan baksonya selesai, yaitu ketika sudah kenyang.
Saya harap dari 2 contoh di atas bisa dilihat perbedaannya.
Dalam bahasa pemrograman, terdapat statement looping untuk mengakomodasi dua keadaan di atas, yaitu bentuk FOR dan WHILE.
Bila dijumpai looping yang diketahui jumlah perulangannya, maka kita bisa menggunakan FOR atau WHILE.
Sedangkan bila dijumpai looping yang tidak diketahui jumlah perulangannya, atau hanya diketahui syarat berhentinya perulangan, maka kita hanya bisa menggunakan WHILE saja.
Sebagai contoh, saya berikan contoh perulangan yang diketahui jumlah perulangannya sehingga dapat dituliskan dengan FOR atau WHILE (dalam Pascal).
for mangkuk := 1 to 10 do
begin
writeln('Saya makan bakso mangkuk ke-', mangkuk);
end;
bila dinyatakan dalam WHILE menjadi
mangkuk := 1;
while (mangkuk <= 10) do
begin
writeln('Saya makan bakso mangkuk ke-', mangkuk);
mangkuk := mangkuk + 1;
end;
Selanjutnya bagaimana contoh perulangan yang tidak diketahui jumlah perulangannya, yang hanya bisa menggunakan WHILE? OK akan saya berikan contohnya. Dalam contoh ini, program akan terus meminta input user selama input yang dimasukkan bukan 0.
input = 1; // kita buat nilai awal sebarang, asal bukan 0.
while (input <> 0) do
begin
write('Masukkan sebarang input : ');
readln(input);
end;
Mudah-mudahan penjelasan di atas bisa menjawab kebingungan mahasiswa terkait penggunaan FOR dan WHILE.
Anda ingin mendownload beberapa tool programming 100% gratis?
Silakan download di FREE PROGRAMMING TOOLS.
atau ingin berdonasi untuk pengembangan blog ini cukup dengan $1 via Paypal?
Beberapa artikel terkait
- Membuat Program Konversi Bilangan Desimal ke Biner dengan Pascal
- Function Menghitung Pangkat Bilangan dengan Pascal
- Beberapa Function Pengolah String di PHP (Bag. 1)
- Menghitung Jumlah Hari Minggu Antara Dua Tanggal
- RoboMind, Game untuk Programmer Pemula
- Membuat Kalkulator Berbasis String dengan PHP
Share this article on:
Kata kunci:





mas taw mbak yg punya site ney tlung akuw dunk tolong kirimin script pascal yang ada perintah WHILE,REPEAT n FOR.
tak tungu kirim ke emailku yaw
thanks sebelumnya?????
ijonk tunggu
coba cek di tutorial pascal yang saya buat ini mas agus. Mudah-mudahan ketemu yang dicari.
Pak, bagaimana kalau di dalam looping melakukan suatu pencarian apakah ada looping lagi di dalamnya?
Begini, saya membuat program menggunakan VB untuk memanage keanggotaan berantai. Untuk melihatnya saya pakai treeview. tapi treeview tersebut tidak bisa menghitung total dari child suatu node, hanya bisa menghitung node dibawahnya. duh? email aja kali ya pak? kemana saya harus email?
salam,
arief
Pak, Kalau menampilkan looping berikut:
1234
5678
11121314
…dst
s/d 100
gimana caranya pak?
to ivan: kok habis 8 langsung 11?
oya, maaf!!
maksud saya,
1234
5678
9101112
…dst
s/d 100
@ivan: berarti kan itu setiap sampai bilangan kelipatan 4, bilangan berikutnya akan turun ke bawah kan? berarti pakai gini saja
for($i=1; $i<=100; $i++)
{
if ($i % 4 == 0) echo “<br>”;
echo $i;
}
Maaf.. saya nulisnya pakai bahasa PHP. Tanda % itu maksudnya adalah modulo dan <br> itu maksudnya tanda untuk ganti baris.
oya,terima kasih banyak pak!!saya cobain dulu y,kebetulan sekali saya emang butuh coding php nya,
oya,udah saya coba pak!!
tp saya ganti hasil modul nya jadi 1!
terima kasih ya pak!!
@ivan: sama-sama mas Ivan
pak gimana script program c++ dengan menggunakan for,while dan do while
yg nanti hasilnya sbb:
10 20 30 40 50 60 70 80 90 100
9 18 27 36 45 54 63 72 81
8 16 24 32 40 48 56 64
7 14 21 28 35 42 49
6 12 18 24 30 36
5 10 15 20 25
4 8 12 16
3 6 9
2 4
1
mohon script programnya pak….
seklaigus penjelasannya..
@yuda: Saya buat pake C saja ya. Berarti itu kan konsepnya untuk setiap barisnya kita mengenerate bilangan-bilangan kelipatan dari bilangan pertamanya. JUmlah bilangan-bilangan pada suatu baris tergantung bilangan pertama dari setiap barisnya. Jadi codenya adalah:
pak, bagai mana coding-nya untuk if-else tapi digantikan dengan looping dan menggunakan looping apa (FOR/WHILE)?
dimisalkan ada sebuah persegi panjang namun nilai panjang dan lebarnya birnilai 0 ~ 20 dan jika kita memasukan nilai diluar tersebuta keluar pesan “sytem hanya membaca nilai 0 sampai 20″.
terimaksih.
@elwinz: oh IF dan looping itu beda mas. Jadi tidak bisa digantikan. Untuk kasus Anda, itu hendaknya menggunakan IF karena proses perhitungan luas akan dilakukan jika inputnya bernilai 0 – 20.
if ((panjang >= 0) and (panjang <= 20) and (lebar >=0) and lebar (lebar <= 20))
{
lakukan perhitungan
}
else input salah
assalamualaikum pak bagaimana ya cara membuat thumbnail yang beraturan jadi tidak selalu kebawah setelah diupload?
pak saya minta tolong diberi contoh kodingan untuk pengulangan for yg hasilnya seperti ini
11111
22222
33333
44444
55555
terima kasih ya pak
@samudera: coba lengkapi script ini ya mas