1. P E R U L A N G A N ( L O O P I N G )
Pada semua bahasa pemrograman, pengulangan proses ditangani dengan suatu mekanisme yang disebut loop. Dengan menggunakan loop, suatu proses yang berulang misalnya menampilkan tulisan yang sama seratus kali pada layar dapat diimplementasikan dengan kode program yang pendek.
Pada bahasa C terdapat 3 (tiga) jenis perulangan (looping), yaitu:
a. Perulangan for
b. Perulangan do-while
c. Perulangan while
a. Perulangan FOR
perulangan for mempunyai bentuk umum, yaitu:
for (ungkapan 1; ungkapan 2; ungkapan 3)
pernyataan;
Bentuk ini digunakan apabila anda sudah mengetahui berapa kali anda akan mengulang satu atau beberapa pernyataan.
Contoh :
for (nilai = 20; nilai <= 100; nilai += 10) printf (“%d\n”, nilai); b. Perulangan DO - WHILE Perulangan do-while mempunyai bentuk umum: do{ pernyataan; }while (kondisi) Pernyataan ini menyatakan perulangan proses selama kondisi tertentu. Contoh : counter = 1 do{ printf(“C++\n”); counter ++; }while (counter < 10); c. Perulangan WHILE Perintah while sama dengan perintah do-while, hanya pengujian kondisinya terletak pada awal loop. Perulangan while mempunyai bentuk umum, yaitu: while (kondisi) pernyataan; Contoh : i = 15; while (i > 0)
{
Printf (“%d\n”, i);
i - -;
}
Perbedaan antara FOR, DO - WHILE, dan WHILE :
a. For :
untuk mengulang suatu proses yang telah diketahui jumlahnya.
b. Do-while : Post Tested Loop
untuk mengulang suatu proses yang belum diketahui jumlahnya. Instruksi akan dijalankan lebih dahulu, kemudian dilakukan pengecekan kondisi apabila masih bernilai true maka looping akan terus berlanjut.
c. While : Pre Tested Loop
untuk mengulang suatu proses yang belum diketahui jumlahnya. Pengecekan kondisi akan dilakukan terlebih dahulu. Jika kondisi masih bernilai true, maka looping akan terus berlanjut.
Contoh PERULANGAN :
1-1/2-1/4+1/7-1/11-1/16+1/22……..1/n = ?
nilai n max 500.
1 / 1
1 / (1+1) = 1/2
1 / (2+2) = 1/4
1 / (4+3) = 1/7
1 / (7+4) = 1/11
#include
int main()
{
int N;
i, counter;
float sum = 0.0;
printf("Input N max : ");
scanf("%d",&N);
counter = 0; i = 1;
while (i < N)
{
if (counter % 3 == 2)
{
sum += (float)1 / (float)i;
}
else
{
sum - = (float)1 / (float)i;
}
counter ++;
i += counter;
}
printf("Hasil : %f\n", sum);
getch();
return 0;
}
2. LOOPONG LANJUT
Dalam suatu loop terkandung loop yang lain, sehingga jika loop tersebut diulangi n kali dan loop yang didalamnya juga dilakukan m kali maka pernyataan yang ada di dalam nested loop sebanyak n x n. Loop yang terletak didalam loop biasa disebut dengan loop didalam loop (nested loop). Contoh bentuk umum statemennya jika menggunakan perintah for adalah sebagai berikut:
for (i . .; . .;. .)
{
for(j . .; . .; . .)
{
for(k . .; . .; . .)
{
pernyataan;
} / / end k
} / / end j
} / / end i
int main()
{
int N;
i, counter;
float sum = 0.0;
printf("Input N max : ");
scanf("%d",&N);
counter = 0; i = 1;
while (i < N)
{
if (counter % 3 == 2)
{
sum += (float)1 / (float)i;
}
else
{
sum - = (float)1 / (float)i;
}
counter ++;
i += counter;
}
printf("Hasil : %f\n", sum);
getch();
return 0;
}
2. LOOPONG LANJUT
Dalam suatu loop terkandung loop yang lain, sehingga jika loop tersebut diulangi n kali dan loop yang didalamnya juga dilakukan m kali maka pernyataan yang ada di dalam nested loop sebanyak n x n. Loop yang terletak didalam loop biasa disebut dengan loop didalam loop (nested loop). Contoh bentuk umum statemennya jika menggunakan perintah for adalah sebagai berikut:
for (i . .; . .;. .)
{
for(j . .; . .; . .)
{
for(k . .; . .; . .)
{
pernyataan;
} / / end k
} / / end j
} / / end i
Tidak ada komentar:
Posting Komentar