Presentasi sedang didownload. Silahkan tunggu

Presentasi sedang didownload. Silahkan tunggu

STRUKTUR KENDALI PROSES. STRUKTUR KENDALI PENGULANGAN Mengulang satu atau lebih instruksi untuk jumlah pengulangan tertentu. Jumlah pengulangan ada dua.

Presentasi serupa


Presentasi berjudul: "STRUKTUR KENDALI PROSES. STRUKTUR KENDALI PENGULANGAN Mengulang satu atau lebih instruksi untuk jumlah pengulangan tertentu. Jumlah pengulangan ada dua."— Transcript presentasi:

1 STRUKTUR KENDALI PROSES

2 STRUKTUR KENDALI PENGULANGAN Mengulang satu atau lebih instruksi untuk jumlah pengulangan tertentu. Jumlah pengulangan ada dua jenis :  Jumlah pengulangan diketahui sebelum proses  Jumlah pengulangan tidak diketahui sebelum proses Struktur pengulangan terdiri atas dua bagian : 1. Kondisi pengulangan yaitu ekspresi boolean yang harus dipenuhi untuk melaksanakan pengulangan 2. Isi atau badan pengulangan yaitu satu atau lebih instruksi yang akan diulang. Perintah atau notasi dalam struktur pengulangan adalah : 1. Pernyataan for 2. Pernyataan while 3. Pernyataan do.. while 4. Pernyataan continue dan break 5. Pernyataan go to

3 STRUKTUR KENDALI PENGULANGAN Instruksi for Instruksi for digunakan untuk menghasilkan pengulangan(looping) beberapa kali. Pada umumnya jumlah pengulangan yang dilakukan oleh for telah diketahui awal, kondisi pengulangan dan perubahannya. Selama kondisi terpenuhi, maka statement akan terus dieksekusi. Syntax : for ([expr1];[expr2];[expr3]) statement; Expr1 untuk inisialisasi, berupa satu atau beberapa instruksi yang dipisahkan koma. Expr2 berupa ekspresi kondisional untuk menentukan kondisi pengulangan. Selama menghasilkan nilai true, maka statement dikerjakan Expr3 untuk menaikkan atau menurunkan nilai pengendali

4 STRUKTUR KENDALI PENGULANGAN for(expr1;expr2;expr3) { statement; } Expr1 dikerjakan hanya sekali (nilai awal) Expr2 diperiksa, jika true, kerjakan statement Expr3 dikerjakan Expr2 diperiksa, jika true, kerjakan statement Expr3 dikerjakan Proses berulang hingga expr2 bernilai false expr1 expr2 statementexpr3 True next statements False

5 STRUKTUR KENDALI PENGULANGAN while (kondisi) { statement; } while biasa digunakan untuk pengulangan statement dimana jumlah pengulangan tidak diketahui. Statement yang ada didalam while bisa diabaikan sama sekali (tidak dikerjakan) apabila di saat awal, kondisi sudah bernilai false. Statement akan terus dikerjakan selama kondisi masih bernilai true. kondisi statement true false

6 STRUKTUR KENDALI PENGULANGAN do { statement; } while (kondisi); Sama seperti while, do…while biasa digunakan untuk pengulangan statement dimana jumlah pengulangan tidak diketahui. Perbedaannya, statement didalam do.. while dikerjakan minimal satu kali. Statement akan terus dikerjakan selama kondisi masih bernilai true. kondisi statement true false

7 7 3 * 1 = 3 *** 3 * 2 = 6 ****** 3 * 3 = 9 ********* 3 * 4 = 12 ************ 3 * 5 = 15 *************** 3 * 6 = 18 ****************** # include int main() { int i, j, tripel; for(i = 1; i <= 6; i++) { tripel = 3 * i; printf("3 *%2d =%3d ", i, tripel); for(j = 0; j < tripel; j++) putch('*'); printf("\n"); } system(“pause”); return 0; } CONTOH PEMAKAIAN FOR Thompson S.Ngoen

8 8 for ( a = 0; a < 10; a++ ) printf(“%d ”, a); for ( b = 10; b < 0; b++ ) printf(“%d ”, b); for ( c = 1; c < 15; c += 2 ) printf(“%d ”, c); for ( d = 3; d < 10; ) printf(“%d ”, d*d); for ( e = 1; e < 10; e++ ) { printf(“%d ”, e); e = e + 1; } g = 100; for (f = 0; f < 100; f++) g++; printf(“%d ”, g); Apa yang terjadi dengan instruksi for berikut? LATIHAN FOR Thompson S.Ngoen

9 9 for ( i = 2; i < 4; i++ ) for (j = 5; j < 8; j++) printf(”%d * %d = %d\n”, i, j, i * j ); ijTercetak 252 * 5 = * 6 = * 7 = * 5 = * 6 = * 7 = * 5 = 10 2 * 6 = 12 2 * 7 = 14 3 * 5 = 15 3 * 6 = 18 3 * 7 = 21 NESTED FOR Thompson S.Ngoen

10 10 # include int main() { int bil = 1, sum = 0, ctr = 0; float avg; printf("Ketik sejumlah bilangan, diakhiri 0 \n"); while(bil != 0) { scanf("%d", &bil); sum += bil; ctr++; } avg = (float) sum / (ctr - 1); printf("jumlah nilai = %d \n", sum); printf("rerata = %.2f ", avg); system(“pause”); return 0; } CONTOH PEMAKAIAN WHILE Thompson S.Ngoen Ketik sejumlah bilangan, diakhiri jumlah nilai = 267 rerata = 44.50

11 while (a < 10) printf(“%d ”, a); b = 10; while (b < 20) { printf(“%d ”, b); b += 2; } jawab = ‘ ‘; while (jawab != ‘Y’ && jawab != ‘T’) jawab = getchar(); while (jawab != ‘Y’ || jawab != ‘T’) jawab = getchar(); Apa yang terjadi dengan instruksi while berikut? A B C D LATIHAN WHILE Thompson S.Ngoen

12 # include int main() { int tebak, jawab; randomize(); jawab = random(101); printf("Tebak angka 0 s/d 100\n\n"); do { printf("bilangan ? "); scanf("%d", &tebak); if (tebak == jawab) printf("TEPAT..."); else if (tebak < jawab) printf("terlalu kecil...\n"); else printf("terlalu besar...\n"); } while (tebak != jawab); system(“pause”); return 0; } CONTOH PEMAKAIAN DO WHILE Thompson S.Ngoen Tebak angka 0 s/d 100 bilangan ? 50 terlalu kecil... bilangan ? 75 terlalu besar... bilangan ? 60 terlalu kecil... bilangan ? 67 terlalu besar... bilangan ? 65 terlalu kecil... bilangan ? 66 TEPAT... Tebak angka 0 s/d 100 bilangan ? 50 terlalu besar... bilangan ? 35 terlalu besar... bilangan ? 15 terlalu kecil... bilangan ? 25 terlalu kecil... bilangan ? 30 terlalu besar... bilangan ? 27 TEPAT...

13 a = 10; do { printf(“%d ”, a); } while (a < 100); do { scanf(“%d”, &b); } while (b < 0); do { jawab = getchar(); } while (jawab != ‘Y’ && jawab != ‘T’) Apa yang terjadi dengan instruksi do while berikut? A B C LATIHAN DO WHILE Thompson S.Ngoen

14 Infinite loop adalah pengulangan tanpa akhir. Jika kondisi pengulangan selalu true maka pengulangan akan terjadi terus menerus. for (... ; 1 ;...) {... } do {... } while (1); while (1) {... } INFINITE LOOP Thompson S.Ngoen

15 break dan continue break digunakan untuk menghentikan sebuah pengulangan, walaupun sebenarnya kondisi masih mungkin bernilai true. Selain untuk pengulangan, break juga digunakan untuk switch Contoh : #include int main() { int a; for(a=1;a < 5;a ++) { printf(“a = %d\n”,a); if(a==3) break; } system(“PAUSE”); return 0; }

16 break dan continue continue digunakan untuk melanjutkan ke pengulangan berikutnya dengan mengabaikan semua statement yang ada setelah statement continue tersebut. Contoh : #include int main() { int i; for(i=0;i<=100;i++) { if(i % 2 == 0) continue; printf(“%3d”,i); } system(“pause”); return 0; }

17 # include int main() { float pj, lb, ls; printf("PERSEGI PANJANG \n"); do { printf("\nPanjang ? "); scanf("%f", &pj); if (pj <= 0.0) break; printf("Lebar ? "); scanf("%f", &lb); ls = pj * lb; printf("Luas = %.2f\n", ls); } while(1); system(“pause”); return 0; } CONTOH PEMAKAIAN BREAK PERSEGI PANJANG Panjang ? 10 Lebar ? 3.5 Luas = Panjang ? Lebar ? 6.8 Luas = Panjang ? 0 Thompson S.Ngoen

18 # include int main() { int i, j; for (i = 1; i <= 10; i++) { if (i % 3 == 0) continue; printf("%2d ", i); for (j = 0; j < i; j++) putchar('*'); printf("\n"); } system(“pause”); return 0; } 1 * 2 ** 4 **** 5 ***** 7 ******* 8 ******** 10 ********** CONTOH PEMAKAIAN CONTINUE Thompson S.Ngoen

19 References : Thompson SN, 2009, Algoritma dan Struktur Data dengan C. Deitel, PJ, HM.Deitel, 2007, C How to Program, 5 th Edition.


Download ppt "STRUKTUR KENDALI PROSES. STRUKTUR KENDALI PENGULANGAN Mengulang satu atau lebih instruksi untuk jumlah pengulangan tertentu. Jumlah pengulangan ada dua."

Presentasi serupa


Iklan oleh Google