Minggu, 17 Oktober 2010

Perulangan / Looping

Bahasa kerennya looping. Temen-temen di kampus sering bilang, "Eh, program itu kamu bikin pake looping ga?", "Wah, perkalian matriks tuh programnya harus pake looping dua kali ya?". Menurutku tujuan sebenarnya penggunaan kata "looping" hanya pengen terlihat keren aja, artinya ya perulangan itu. :D

Perulangan atau loop adalah sebuah blok program yang mengerjakan proses/statement yang sama secara berulang-ulang. Loop ini digunakan agar kita tidak perlu susah-susah menulis statement di dalam program hanya untuk mengerjakan fungsi yang sama. Contoh kasus seperti ini, kamu disuruh membuat program yang menampilkan kata "hello" sebanyak lima kali. Source tanpa perulangan akan tampak seperti ini:

#include<stdio.h>

void main(){
 printf("hello\n");
 printf("hello\n");
 printf("hello\n");
 printf("hello\n");
 printf("hello\n");
}

Hmm, memang bisa saja kita pakai source seperti di atas. Tapi bagaimana jika kita disuruh menampilkan kata hello sebanyak 20 kali? 50 kali? 100 kali? Pasti akan melelahkan bukan? Lagi pula source akan menjadi panjang dan ukuran file semakin membesar. Well, yeah! Inilah gunanya perulangan atau looping itu. Kita tidak perlu menuliskan statement berulang-ulang seperti contoh di atas. Dengan looping, kita hanya perlu menuliskan statement tersebut satu kali saja! Oke, akan aku coba jelaskan macam-macam looping terlebih dahulu.

Perintah perulangan ada tiga macam:
1. for
2. while 
3. do while

1. for
Syntax untuk menuliskan perintah for adalah sebagai berikut:
for(inisialisasi nilai; syarat pengulangan; perubahan nilai){
 statement-yang-akan-diulang;
}

Untuk kasus di atas tadi, kita bisa menuliskannya seperti ini:
#include<stdio.h>

void main(){
 int i;
 for(i=0; i<5; i++){
  printf("hello\n");
 }
}

Nah, coba lihat bedanya dengan source di awal tadi. Lebih praktis seperti ini kan? Jadi kalau kita ingin menampilkan teks hello sebanyak 100 kali, kita hanya mengganti nilai 5 menjadi 100.

2. while
Syntax penulisan while sebagai berikut:
while(syarat-pengulangan){
 statement-yang-akan-diulang; 
}

Mari kita coba menyelesaikan kasus di atas dengan bentuk perulangan yang kedua. Here the source:
#include<stdio.h>

void main(){
 int i=0;
 while(i<5){
  printf("hello\n");
  i++;
 }
}

Memang agak berbeda dengan for, perintah while tidak memiliki inisialisasi. Jadi inisialisasi harus dilakukan di awal sebelum melakukan perintah while.

3. do while
Syntax penulisannya sebagai berikut:
do{
 statement-yang-akan-diulang;
}while(syarat-pengulangan);

Perintah do while ini mirip sekali dengan perintah while. Hanya saja perintah do while akan mengerjakan statement minimal satu kali. Jadi, jika syarat pengulangan tidak terpenuhi, perintah do while akan tetap mengerjakan statement tersebut satu kali.

Oke, kasus tadi kita coba memakai perintah do while:
#include<stdio.h>

void main(){
 int i=0;
 do{
  printf("hello\n");
  i++;
 }while(i<5);
}

Well, itu tadi sekelumit tentang perulangan. Oh ya, ada sedikit catatan neh. Hati-hati dalam penggunaan perintah perulangan ini. Jika kita tidak teliti dalam pengkondisian syarat perulangan, maka akan terjadi perulangan yang tidak ada habisnya (infinite looping). Coba lihat contoh berikut:
for(i=0; i>5; i--){
 printf("hello\n");
}

Contoh di atas adalah contoh perulangan tanpa henti. Ini disebabkan nilai i akan selalu dikurangi setiap setelah melakukan statement. Akibatnya nilai i tidak akan mencapai nilai lebih besar dari 5 yang merupakan syarat berhentinya perulangan tersebut.



http://hamzcraze.blogspot.com/2010/02/perulanganlooping-dalam-bahasa-c.html

0 komentar: