Ketiga perintah ini digunakan dalam GNU C untuk melakukan perulangan.
Perbedaannya terletak pada syntax (format penulisan) serta fungsinya.
Perintah for hanya bisa melakukan perulangan yang terhitung, sedangkan perintah while dan do-while bisa melakukan perulangan baik yang terhitung maupun tidak terhitung.
Kita bahas perintah for dahulu... Yok ayoookk.. S'mangat! for itu mudah dan menyenangkan!! ^^
Syntax:
__for (inisialisasi;kondisi;modifier)
__{
____statement;
__}
Keterangan:
Untuk mempermudah pembahasan, kita beri nomor
1 untuk bagian inisialisasi,
2 untuk bagian kondisi,
3 untuk bagian modifier, dan
4 untuk bagian statement. OK?
Pertama, program hanya akan menjalankan bagian 1 sebanyak sekali, lalu dicek pada bagian 2. Bila benar, bagian 3 akan dijalankan, diikuti bagian 4.
Setelah itu, program akan kembali melakukan cek pada bagian 2. Apabila masih benar, akan dilanjutkan dengan menjalankan bagian 3 dan 4 seperti sebelumnya.
Program akan terus berputar pada bagian 2 - 3 - 4. Sampai kapan? Sampai ketika bagian 2 (kondisi) tidak terpenuhi (hasil pengecekan bernilai salah).
Jadi, kesimpulannya:
Program akan berjalan dengan urutan 1 - 2 - 3 - 4 - 2 - 3 - 4 - 2 - 3 - 4 dst. sampai dengan bagian 2 (kondisi) tidak terpenuhi.
Perhatikan: bagian 1 hanya dilakukan sekali, lalu jalannya perulangan akan berputar pada bagian 2 - 3 - 4.
Contoh penggunaan perintah for:
__for(a=1;a<=3;a=a+1)
__{
____printf("Ini baris ke %i\n",a);
__}
Program tersebut akan membuat tampilan sbb:
__Ini baris ke 1
__Ini baris ke 2
__Ini baris ke 3
Sekarang kita bahas perintah while dan do-while...
Syntax while:
__while(kondisi)
__{
____statement;
__}
Syntax do-while:
__do
__{
____statement;
__}
__while(kondisi);
Persamaan kedua perintah di atas adalah sama-sama hanya menggunakan satu parameter, yaitu kondisi.
Perbedaannya adalah pada perintah while pengecekan dilakukan pada awal blok, sedangkan perintah do-while melakukan pengecekan pada akhir blok.
Hati-hati: Pada akhir perintah do-while dilengkapi dengan ; (titik koma), lain dengan perintah for dan while.
Lalu, muncul pertanyaan:
Bagaimana perintah while dan do-while melakukan perulangan seperti perintah for?
Padahal, perintah while dan do-while hanya menggunakan 1 parameter (kondisi), sedangkan perintah for menggunakan 3 parameter (inisialisasi, kondisi dan modifier).
Jawabnya adalah bagian inisialisasi dan modifier kita masukkan dalam baris program biasa sedemikian sehingga alur perulangan menjadi sama dengan perintah for.
Contoh penggunaan perintah while dan do-while untuk membuat tampilan yang sama dengan contoh perintah for di atas:
Dengan menggunakan perintah for:
__for(a=1;a<=3;a=a+1)
__{
____printf("Ini baris ke %i\n",a);
__}
Dengan menggunakan perintah while:
__a=1;
__while(a<=3)
__{
____printf("Ini baris ke %i\n",a);
____a=a+1;
__}
Dengan menggunakan perintah do-while:
__a=1;
__do
__{
____printf("Ini baris ke %i\n",a);
____a=a+1;
__}
__while(a<=3);
Bisa kita lihat, bahwa bagian inisialisasi diletakkan di luar blok perulangan, sedangkan bagian modifier diletakkan di dalam blok perulangan.
Mengapa? Why? Opo'o?
Hal ini sesuai dengan alur perulangan yang akan berjalan (ingat urutan perulangan pada perintah for), yaitu 1 - 2 - 3 - 4 - 2 - 3 - 4 - 2 - 3 - 4 dst. (kalau lupa apa itu 1, 2, 3 dan 4, scroll dan lihat di atas. OC? hehe.. Semangat2!! while dan do-while itu mudah dan menyenangkan!! ^^)
Perhatikan: Karena bagian inisialisasi [a=1;] hanya dilakukan sekali, maka ia harus diletakkan sebelum blok perulangan. Sebaliknya, bagian modifier [a=a+1;] yang dilakukan berulang harus diletakkan dalam blok perulangan.
OK, sekian untuk post pertama. Saia harap post ini bisa memberikan penjelasan tambahan mengenai materi yang disampaikan di kelas. Bila ada pertanyaan bisa langsung memberikan comment...
Thx,
tomiko_lin
Subscribe to:
Post Comments (Atom)
Perulangan mudah dan menyenangkan wakaka...
ReplyDeleteThis comment has been removed by the author.
ReplyDeleteBang Tom,ini Stanley klz XK-34,yg keren itw..
ReplyDeletehehehehe....]
Tp ini e-mail ko"q
Bang,aq maw tny ini..
Penting bngt..
Pertanyaan'e
Skrg kit lg bel tntg ap??
hehehe...^^
Piece....
Thx y bang klo mw brtw..
hm..
ReplyDeletekq nih blog sepi2 aja y..
kaya'e perlu peningkatan deh, seperti ditambah hiasan, gambar2, atau mungkin soal ulangan ya?
ups..;p
wkwkwk..
Emank bang..
ReplyDeletePerlu d tmbh mknan spy bnyk yg dtg..
hehehe...^^
Tp tng aj bang,saya kan slalu stia mengisi blog ini..
hehehehe...
Tp emank lbh bgz klo sampe ad soal ulangannya..
Pzt blog ini rame bngt..
Dijamin 99,9% bang..
hehehehe...^^
O y bang,1 lg..
ReplyDeleteHappy new year y..
hehehehehe...
Jgn lp coklatnya..
Ok bang....???
hallo....
ReplyDeletegw neeh bingung jugaa ttg while sama do-while...
ruweet...
kl besok2nya ulangan mungkin g kalo while/do-while majemuk keluar...???
kl bisa jgn ya...
oh iya, happy Val'z day...
muuph telat, kemarin kirim comment tp g masuk...
jd br bisa sekarang....
~_~"
uhm... maaph juga kalo commentku diataz agak2 jayuzzzz.....
ReplyDelete@_@
buat triple$ : prasaan uda g taon baruan de.. btw,ini khusus mbahas perulangan y.. coklat g dbhs dsini..
ReplyDeletebuat ozzie : ok,tnang aja..ga ada perulangan majemuk yang kluar..
mgg ini latian dulu 1jampel,trus br ulangan..
happy val'z day jg.. :)
hm,1 lagi,buat yg ngikuti blog ini,pls kalian jd follower ya (klik aja "follow this blog" di bagian kanan atas halaman ini)..
jadi biar bisa tau brapa bnyk yg masuk ke sini..
saia akan lihat respon kalian,kalau banyak,akan saia buatkan blog untuk materi berikutnya..
thx,
tomiko_lin
wegh... untung ajah....
ReplyDeletetriples tuh sapa yowh....????
~_~"
cwex ato cwox...??
oh iya... nie ozzie yang udah ganti nick...
ReplyDeleteaku lupa sandi yang lama...
T_T
ehm... pak tom...
ReplyDeletebedanya kalo follow sama kagak apa see...???
klo follow, meskipun ga kasi komen, saia kan bs tw sapa yg ngikuti blog ini..
ReplyDeleteklo g follow, g bs tau ada yg ngliat ato ngga.. gt,..
sekaligus buat pertimbangan, blog ini bs dilanjutkan atau ngga..
kalo ngga ada yg buka, percuma dibuat kan.. :)
!! ATTENTION !!
ReplyDeletesetelah materi perulangan ini, berikutnya adalah penggunaan fungsi dalam GNU C..
*santai.. gampang kq.. yg pnting hafal, pasti bs ;p*
eit, tapi jgn keburu lupain perulangan, coz qta masi menggunakan perulangan ini juga.. ok?!
Pak, wes tak follow iki lhoo..
ReplyDeletejok lali follow blog q yoo.. wkwkwk
link jg skalian..
thx..
allanimelovers.blogspot.com
^^
Duh...
ReplyDeletembOk PlaJaRaNE Jok SuSaH" pak...
pak... cuma test doeloe...
ReplyDeletepasswordku lupa....
pak.. klo tampilannya gini programnya gimana? thanks..
ReplyDelete1
2 4
3 9 27
4 16 64 256
help me please.. T.T
pak ulangan terakhir yang tampilan:
ReplyDeleteyang angka menurun itu fungsi whilenya bagaimana...???
aku masih bingung lhoh pak
...Reply...
@Jr :
ReplyDeletegampang..hehe..
for(a=1;a<=4;a++)
{c=a;
for(b=1;b<=a;b++)
{
printf("%i ",c);c=c*a;
}
printf("\n");
}
@zhie :
lohh..
bukane d catetan ada..
itu kan simpel,tinggal modif dari for tok..
dliat lg..
waa.. iyoo.. bner2.. tq2.. ^^
ReplyDeletepak.... sabtu ini kita ngapain kompnya...????
ReplyDeletebagus nih jadi tau menggunakan perintah Pengulangan do WHILE
ReplyDeletekak.. jujur neh.. saya baru mau kul dan saya ngak ngerti sama sekali
ReplyDeletemungkin kakak bs ngajarin saya dr paling awal dan jelasin semuany kak
bisa ga kak? mohon bgt bantuannya
kabarin saya yah
email saya.. kiezzz_gothic@yahoo.com atau saya bs hub kakak dmn?
thx byk sebelumnya
hm,blh aja..
ReplyDeletekontak saia di tomiko85@gmail.com
bisa ajarin do-while algodasar g??
ReplyDeleteyang ada judul, kamus, algoritma...
mohon di bantu send ke sini aja
"healmebauxx@yahoo.co.id"
sama for, next, repeat-until juga heheheh..
d tunggu...
bisa ajarin do-while algodasar g??
ReplyDeleteyang ada judul, kamus, algoritma...
mohon di bantu send ke sini aja
"healmebauxx@yahoo.co.id"
sama for, next, repeat-until juga heheheh..
d tunggu...
ini si pusingalgo
wah, sangat membantu. terima kasih, memang ini yang saya butuh kan :)
ReplyDeletegood artikel
ReplyDelete