For A While
Saya yang lagi rajin belajar ini mau posting sesuatu soal kuliah pemrogaman C yang diajarkan ibu dosen yang katanya anak2 serem padahal cantik . Materi kemarin itu membahas tentang perulangan/loop menggunakan for dan while .
Jadi Pada Kuliah tersebut ibu dosen Menjelaskan Perbedaan loop menggunakan for dan while. Perbedaan nya adalah, Banyaknya perulangan menggunakan for sudah ditentukan dari awal, sedangkan While tidak ditentukan. Perbedaan kedua adalah, Loop menggunakan metode FOR bisa diubah dengan menggunakan metode WHILE , namun tidak semua perulangan WHILE bisa diubah menggunakan FOR.
benarkah ? berikut penjelasan nya dengan menggunakan contoh :
for (i=0;i<5;i++){
//statement
}
Dengan metode While akan menjadi,
i=0;
while (i<5){
//statement
i++;
}
Contoh diatas menjelaskan bahwa perulangan menggunakan for akan selalu bisa diubah menjadi bentuk while. Kedua Perintah diatas akan menjalankan perulangan sebanyak 5 kali.
contoh sebaliknya :
lagi=’y';
while (lagi==’y'){
scanf(”%c”,lagi) ;
}
Contoh diatas akan menjalankan perulangan untuk jumlah yang tidak ditentukan. Perulangan akan terus terjadi selama variable lagi diisi dengan karakter huruf “y”. Nah Contoh inilah yang membuktikan bahwa metode while tidak bisa diubah menggunakan metode for, karena jumlah perulangan tidak ditentukan.
Begitulah Penjelasan dari ibu dosen. Namun sepertinya saya pernah melihat program yang menggunakan FOR untuk kasus diatas. kira2 seperti inilah
for(;;){
scanf(”%c”,lagi) ;
if(lagi!=’y') break;
}
Gimana ? yah saya tau emang agak maksa. perulangan for dengan tanpa parameter akan mengakibatkan infinite loop, ga ada habisnya. Perulangan akan berhenti jika variable lagi adalah bukan “y”. Perintah break digunakan Untuk keluar dari perulangan .
Mirip dengan metode while kan ?
Jadi, Pada kasus diatas Penggunaan WHILE tetep bisa diganti dengan FOR. Namun mungkin ngga etis. Mungkin ada banyak kasus perulangan dengan WHILE lain yang tidak bisa diganti dengan FOR, Tapi setau saya selama ini bisa terus :D.
Mengapa judulnya For A while? Karena Kata itu pernah populer di milis CA pada saat Swiwi yang tidak anggun sama sekali itu mengalami masa “mutung” dan berniat keluar dari milis dengan alasan yang tidak jelas. Namun karena alasan yang juga tidak jelas, dia mengatakan keluar for a While, untuk sementara. Ah apapun itu saya tidak peduli, Postingan ini serius , no siwi.