expr:class='"loading" + data:blog.mobileClass'>

Translate

Translate

Senin, 19 Maret 2012

bentuk umum tentang looping


Bentuk umum penulisan sintaks perulangan tak kondisional dalam C adalah:

int counter;

for (counter = awal; counter <= akhir; counter += langkah) {

statements;

}

Sintaks C ini sebenarnya yang paling dekat dengan pengertian bahwa perulangan tak kondisional bisa ditulis sebagai perulangan kondisional yang menggunakan counter. Struktur perulangan for dalam Bahasa C memanfaatkan tiga ekspresi yang tertulis di dalam tanda kurung dan dipisahkan dengan tanda titik koma. Ekspresi pertama merupakan sebuah statement yang menandakan inisialisasi perulangan, yang pada bentuk di atas digunakan untuk memberi nilai awal pada counter. Ekspresi kedua menyatakan kondisi yang menentukan jalannya perulangan, yang pada bentuk di atas ditandai dengan pengecekan apakah nilai counter masih belum melampaui nilai akhir. Maksudnya jika nilai ekspresi kedua ini masih bernilai true maka perulangan masih akan dijalankan, sebaliknya jika sudah bernilai false maka perulangan akan berakhir. Ekspresi ketiga berisi statement yang akan dijalankan di akhir setiap langkah dalam perulangan tersebut, yang pada bentuk di atas berisi statement untuk mengubah nilai counter ke nilai berikutnya. Jika nilai counter akan dinaikkan satu-satu di setiap langkah maka ekspresi ketiga cukup ditulis counter++ (singkatan dari counter += 1)atau jika diturunkan satu-satu maka cukup ditulis counter--.

Dengan demikian dapat disimpulkan bahwa konstruksi for dalam C ini merupakan konstruksi perulangan yang sangat fleksibel. Penggunaan counter di dalamnya hanyalah bersifat opsional. Bahkan lebih tepat kalau dikatakan bahwa perulangan for pada C sebenarnya adalah bentuk perulangan kondisional, berhubung di dalam ekspresi kedua terkandung suatu kondisi yang menentukan jalannya perulangan. Hanya saja memang kebanyakan programmer C menggunakan bentuk for untuk perulangan tak kondisional (dalam artian menggunakan counter), sedangkan untuk perulangan kondisional-nya lebih memilih menggunakan while atau do..while.

Konstruksi while dalam C memiliki kesamaan arti dengan konstruksi while..wend dalam BASIC atau while dalam Pascal. Sintaksnya adalah:

while (kondisi) {

statements;

}

Sementara itu konstruksi do..while memiliki arti sama dengan do..loop while dalam BASIC, yang sintaksnya adalah:

do {

statements;

} while (kondisi);

Bahasa C tidak mengenal bentuk yang menggunakan until atau "hingga" seperti halnya Pascal dan BASIC. Dalam C hanya ada bentuk while atau "selama". Sekali lagi alasannya adalah penitikberatan C pada segi keringkasan bahasa. Bentuk until sebenarnya dapat diwakili menggunakan bentuk while not atau "selama tidak/belum". Contohnya kalimat "Budi terus berlari hingga lelah" sebenarnya sama saja dengan kalimat "Budi terus berlari selama belum lelah".

Dalam C, bentuk while sebenarnya dapat diubah ke dalam bentuk for. Jika ada bentuk while seperti terlihat di bawah ini:

ekspr1;

while (ekspr2) {

statements;

ekspr3;

}

maka bentuk tersebut dapat diubah ke dalam bentuk for menjadi:

for (ekspr1; ekspr2; ekspr3) {

statements;

}

Dari sini jelas sudah penjelasan sebelumnya yang menyatakan kenapa konstruksi for dalam C lebih tepat jika dimasukkan ke dalam kategori perulangan kondisional. Tapi pada kenyataannya memang konstruksi for ini disediakan C untuk men-simulasikan konsep perulangan tak kondisional.

Bentuk umum penulisan sintaks perulangan tak kondisional dalam C adalah:

int counter;

for (counter = awal; counter <= akhir; counter += langkah) {

statements;

}

Sintaks C ini sebenarnya yang paling dekat dengan pengertian bahwa perulangan tak kondisional bisa ditulis sebagai perulangan kondisional yang menggunakan counter. Struktur perulangan for dalam Bahasa C memanfaatkan tiga ekspresi yang tertulis di dalam tanda kurung dan dipisahkan dengan tanda titik koma. Ekspresi pertama merupakan sebuah statement yang menandakan inisialisasi perulangan, yang pada bentuk di atas digunakan untuk memberi nilai awal pada counter. Ekspresi kedua menyatakan kondisi yang menentukan jalannya perulangan, yang pada bentuk di atas ditandai dengan pengecekan apakah nilai counter masih belum melampaui nilai akhir. Maksudnya jika nilai ekspresi kedua ini masih bernilai true maka perulangan masih akan dijalankan, sebaliknya jika sudah bernilai false maka perulangan akan berakhir. Ekspresi ketiga berisi statement yang akan dijalankan di akhir setiap langkah dalam perulangan tersebut, yang pada bentuk di atas berisi statement untuk mengubah nilai counter ke nilai berikutnya. Jika nilai counter akan dinaikkan satu-satu di setiap langkah maka ekspresi ketiga cukup ditulis counter++ (singkatan dari counter += 1)atau jika diturunkan satu-satu maka cukup ditulis counter--.

Dengan demikian dapat disimpulkan bahwa konstruksi for dalam C ini merupakan konstruksi perulangan yang sangat fleksibel. Penggunaan counter di dalamnya hanyalah bersifat opsional. Bahkan lebih tepat kalau dikatakan bahwa perulangan for pada C sebenarnya adalah bentuk perulangan kondisional, berhubung di dalam ekspresi kedua terkandung suatu kondisi yang menentukan jalannya perulangan. Hanya saja memang kebanyakan programmer C menggunakan bentuk for untuk perulangan tak kondisional (dalam artian menggunakan counter), sedangkan untuk perulangan kondisional-nya lebih memilih menggunakan while atau do..while.

Konstruksi while dalam C memiliki kesamaan arti dengan konstruksi while..wend dalam BASIC atau while dalam Pascal. Sintaksnya adalah:

while (kondisi) {

statements;

}

Sementara itu konstruksi do..while memiliki arti sama dengan do..loop while dalam BASIC, yang sintaksnya adalah:

do {

statements;

} while (kondisi);

Bahasa C tidak mengenal bentuk yang menggunakan until atau "hingga" seperti halnya Pascal dan BASIC. Dalam C hanya ada bentuk while atau "selama". Sekali lagi alasannya adalah penitikberatan C pada segi keringkasan bahasa. Bentuk until sebenarnya dapat diwakili menggunakan bentuk while not atau "selama tidak/belum". Contohnya kalimat "Budi terus berlari hingga lelah" sebenarnya sama saja dengan kalimat "Budi terus berlari selama belum lelah".

Dalam C, bentuk while sebenarnya dapat diubah ke dalam bentuk for. Jika ada bentuk while seperti terlihat di bawah ini:

ekspr1;

while (ekspr2) {

statements;

ekspr3;

}

maka bentuk tersebut dapat diubah ke dalam bentuk for menjadi:

for (ekspr1; ekspr2; ekspr3) {

statements;

}

Dari sini jelas sudah penjelasan sebelumnya yang menyatakan kenapa konstruksi for dalam C lebih tepat jika dimasukkan ke dalam kategori perulangan kondisional. Tapi pada kenyataannya memang konstruksi for ini disediakan C untuk men-simulasikan konsep perulangan tak kondisional.

Tidak ada komentar:

Posting Komentar