PRAKTIKUM 9 Looping : For A. Dasar Dasar Te Teori Mengulang suatu proses merupakan tindakan yang dijumpai dalam pemrograman. Pada semua bahasa pemrograman, pengulangan proses ditangani dengan suatu mekanisme yang Dengan menggunakan loop, suatu proses yang berulang misalnya menampilkan tulisan yang sama seratus kali pada layar dapat diimpelementasikan dengan kode program yang pendek.
banyak disebut
loop.
Pada pemrograman proses perulangan dapat dibagi menjadi 2 bagian utama yaitu: 1. Perulangan Perulangan yang sudah sudah di ketahui ketahui jumlah jumlah perulangannya perulangannya sebelum perulangan tersebut dilakukan. 2. Perulangan Perulangan yang belum belum di ketahui ketahui jumlah jumlah perulangannya perulangannya sebelum perulangan tersebut di lakukan. Dalam hal ini dapat dibagi menjadi dua bagian yaitu: a) kondisi perulangan diperiksa diawal perulangan. b) kondisi perulangan diperiksa diakhir perulangan. Untuk kasus 1 seharusnya menggunakan perulangan dengan penyataan for . for . edangkan kasus 2a dan 2b akan menggunakan pernyataa while atau while atau do do while. while.
pada
!entuk pernyataan "or "or : for (ungkapan1; ungkapan2; ungkapan3) pernyataan;
#eterangan: Ungkapan1 : digunakan untuk memberikan inisialisasi terhadap $ariabel pengendali loop. • Ungkapan2 : dipakai sebagai kondisi untuk untuk keluar dari loop. • Ungkapan% : dipakai sebagai pengatur kenaikan nilai $ariabel pengendali loop. • #etiga ungkapan dalam "or tersebut harus dipisahkan dengan tanda tanda titik koma &'). Dalam hal ini pernyatan bisa berupa pernyataan tunggal maupun jamak. (ika pernyataannya terbentuk jamak, maka pernyataanpernyataan tersebut harus diletakkan di antara kurung kurawal buka &*) dan kurung kurawal tutup &+), sehingga "ormatnya menjadi : for (ungkapan1; ungkapan2; ungkapan3) { pernyataan; pernyataan; . . . }
aporan Praktikum #onsep Pemrograman - Pengulangan /endra !udi 0utama 2111%1%
Halaman 1
B. Tugas Pendahul Pendahuluan uan C. D. !uatlah desain "low3hart untuk setiap soal dalam per3obaan
E. 1. Progra Program m penam penampil pil bilanga bilangan n ganji ganjill 4. a. 5lgoritma 6. 0. Deklar Deklarasi asikan kan i dan n sebaga sebagaii bilan bilangan gan bulat bulat 7. 1. 7nis 7nisia iasi si nila nilaii i dengan 1 2. !a3a nilai n %. (ika i kurang dari ! n maka lakukan langkah 8, jika tidak maka program langsung selesai 8. 9eta 9etak k nil nilai ai dari dari i . ;ambah bahkan i dengan angka 2 kemudian simpan di i, kembali ke langkah % (. b. 4low3hart → #. .
M. ". #. P. $. R. %. T.
START
i=1
READ n
IF i < 2*n
N Y PRINT i
i=i+2
END
2. Progra Program m Penghitu Penghitung ng !ilanga !ilangan n ;rian ;riangul gular ar U. a. 5lgoritma <. Deklar Deklarasi asikan kan i, bil bil dan jum sebag sebagai ai bilanga bilangan n bulat. bulat. =. 1. 7nis 7nisia iasi si nila nilaii awa awall &u' dengan 2. Masu Masukk kkan an bila bilang ngan an %. !er !erikan ikan ni nilai lai (il kepada i 8. (ika i > maka lakukan langkah - ? bila tidak langsung lakukan langkah @ . 9etak nil nilai i . #urangi i dengan 1, dan simpan hasilnya di i lagi ?. ;ambah bahkan &u' dengan i, dan simpan hasilnya di &u' lagi A. #embali ke langkah 8 @. 9etak nil nilai &u' B. b. 4low3hart →
START
jum = 0
READ bil
i = bil
IF i<0
N
Y PRINT i
i=i-1
jum = jum + i
PRINT jum
END
aporan Praktikum #onsep Pemrograman - Pengulangan /endra !udi 0utama 2111%1%
Halaman 2
C. 55. %. Progr Program am Pena Penamp mpil il 5bja 5bjad d 5!. a. 5lgoritma 59. Deklarasikan i, bil bil dan jum sebagai sebagai bilangan bulat. 5D. 1. 7nis 7nisia iasi si nila nilaii awa awall i dengan 2. (ika i EF 8 maka lakukan langkah %8 bila tidak maka program akan langsung selesai. %. 9etak nil nilai i sebagai huru" sesuai kode 5977nya. 8. #urangi i dengan 1 dan simpan hasilnya di i kembali 5G . #embali ke langkah 2 54. b. 4low3hart → 56. 50. 57. 5(. 5#. 5. 5M. 5H. 8. Program Program Penampi Penampill !ilangan !ilangan Positi" Positi" Hegati Hegati"" !erurut !erurutan an 5I. a. 5lgoritma 5P. 5P. Deklarasika Deklarasikan n i dan n sebagai bilangan bilangan bulat 5J. 1. 7nis 7nisia iasi si nila nilaii i dengan 1 2. !a3a nilai n %. (ika i kurang dari n maka lakukan langkah 8, jika tidak maka program langsung selesai i=i+2 8. (ika sisa (agi antara i dan 2 adalah nol, maka tampilkan hasil kali i dengan )* bila tidak tampilkan i saja . ;ambah bahkan i dengan angka 1 kemudian simpan di i, kembali ke langkah % 5/. b. 4low3hart → PRINT 5. i 5;. 5;.
START
i = !0
IF i>= 6 N Y PRINT i "b# $%a&
i=i+1
END
START
i=1
READ n
IF i <= n
N Y
N
IF i ' 2 == 0
Y
5U.
PRINT I * -1
5<. 5=. 5=.
END
aporan Praktikum #onsep Pemrograman - Pengulangan /endra !udi 0utama 2111%1%
Halaman (
. Progra Program m Penge Penge3ek 3ek !ilanga !ilangan n Prim Primaa 5A. a. 5lgoritma 5B. 5B. 5C. Deklarasika Deklarasikan n isPri'a dan i, (il sebagai bilangan bulat !5. 1. 7nis 7nisia iasi si nila nilaii isPri'a dengan 1 &;rue) 2. Masu Masukk kkan an nila nilaii (il. %. !er !erikan ikan ni nilai lai (il ) * kepada i 8. (ika i > maka lakukan langkah - ?, bila tidak langsung lakukan langkah ? . (ika (ika sisa sisa bagi bagi (il dengan i sama dengan nol atau atau nila nilaii (il sama dengan 1 maka ubah nilai isPri'a menj menjad adii &4al &4alse se)) dan dan langsung menuju ke langkah 1 . #urangi i dengan 1, dan simpan hasilnya hasilnya di i lagi !!. #embali ke langkah 8 isPri' i'a a sama dengan 1&;rue) ?. (ika ni nilai isPr 1&;rue) maka maka 3etak 3etak K!ilan K!ilangan gan PrimaL PrimaL,, bila bila tidak tidak maka 3etak K!ukan PrimaL !9. b. 4low3hart → !D.
START
i"P&ima = 1
READ bil
i = bil - 1
IF i<0
N
Y i=i-1
N
IF il ' 2 == 0 Y i"P&ima = 0
PRINT
N
)u,an P&ima
IF i"P&ima == 1 Y
END
aporan Praktikum #onsep Pemrograman - Pengulangan /endra !udi 0utama 2111%1%
PRINT )ilan#an P&ima
Halaman
!G. . Progra Program m Penghitu Penghitung ng 7ndeks 7ndeks Presta Prestasi si ementa ementara ra !4. a. 5lgoritma START !6. 1. 7nis 7nisia iasi si nila nilaii awa awall i i=1 dengan 1 2. Masu Masukk kkan an nila nilaii n READ &banyaknya nilai) n %. !er !erikan ikan ni nilai lai n ke i 8. (ika (ika nila nilaii i >F >F mak makaa lakukan langkah , i=n bila tidak langsung langkah N . Masukkan nilai+uru, Y dan banyaknya &a' IF . #on$ #on$er ersi si nila nilaii huru" huru" i <= menjadi nilai angka sesuai kriteria 5 E 8, !E%, i=i+1 9E2, DE1, GE READ ?. 0itu 0itung ng jum jumla lah h nila nilaii dala dalam m nilaiHu&u./ jumla%am jam& &u'"ilai-a' &u'"ilai-a') dengan menjumlahkan jumlah nilai a jam& &u'"ilai-a' &u'"ilai-a') dengan perkalian nilai b anga dan &a' kemudian simpan nilainya di &u'"ilai-a' &u'"ilai-a' jumNilaiam = jumNilaiam + nilaiAn#,a * jam jumam = jumam + jam @. 0itu 0itung ng jum jumlah jam& &u'-a' &u'-a') dengan menambahkan jumlah jam ditambah jam dan PRINT i" = jumNilaiam3jumam END i" simpan hasilnya jumm(am . ;ambahka ;ambahkan n nilai nilai i dengan dengan 1 simpan simpan hasilnya hasilnya di i lagi !0. #embali ke langkah 8 1. 0itung 0itung ips dengan membagi jumlah jumlah nilai nilai jam & &u'"ilai-a' &u'"ilai-a') dengan jumlah jam& &u'-a' &u'-a') 11. ;ampil ;ampilkan kan nilai ips ke layar !7. !(.
aporan Praktikum #onsep Pemrograman - Pengulangan /endra !udi 0utama 2111%1%
Halaman
b
b. 4low3hart → !#. nilaiAn#,a = 0
Y
Y
Y
Y
N
N
!.
BM. BM. Per/o er/o(a (aan an B". 1. 6unakan 6unakan loop "or untuk membuat membuat program program sebagai sebagai berikut: berikut: !I. input : n !P. output : 1 % 8 N m & m F bi bilangan gan ga ganjil ke ke n) n) !J. a. ist istin ing g Prog Progrram !/. BS. B$. B%. B%. B'. B. B*. BY. BY. B<. B<. >. >B. >B. >>. >7. >6. >F. >?. >G. >0. >@. >/. >4. >. >N. >.
#inclu #include de !td !tdio. io." " &ai &ain() n() { int in; prin printf tf(+ (+, ,-/$ -/$0 0/% /% S4 S4 15n 15n-6N7 -6N7- 8 2119 21191 13193 3193: : 8 170 170$B $B5 5n+); n+); prin printf tf(+ (+5 5n=== n==== ===== ===== ===== ===== ===== ====== ==== === ===== ===== ===== ===== ===== ===== === 5n5n 5n5n+) +); ; printf(+,-?- ,6 ,6N,04 B0 B04N?N ? ?N@045n+); prin printf tf(+ (+5 5n=== n==== ===== ===== ===== ===== ===== ====== ==== === ===== ===== ===== ===== ===== ===== === 5n+) 5n+); ; printf(+5na!ukkan Au Au&la" i ilangan ga ganAil C +); !canf(+Dd+En); printf(+5nGa!il pengulangan C +); n = n H 2; for(i=1;in;iI=2) { printf(+Dd +i); } printf(+5n+); }
b. 9apture Program 9P. 9J.
9/. 3. 5nal 5nalis isis is Prog Progra ram m 9. 9;. 9;. ejati ejatinya nya,, bilanga bilangan n ganjil ganjil merupak merupakan an bilanga bilangan n yang yang tidak tidak habis habis dibagi dibagi dengan dengan bilangan dua. Hamun, dengan 3ara lain, bilangan ganjil juga dapat kita peroleh dengan menambah 2 &iOF2) tiap bilangan se3ara terus menerus mulai dari bilangan 1. 5gar banyaknya bilangan ganjil yang dapat dapa t ditampilkan dapat dibatasi, maka di control loop diberikan batas yaitu sebanyak 2 kali n sehingga jumlah bilangan ganjil sesuai dengan jumlah&n) yang kita inputkan karena pada looping ini sendiri memiliki step sebanyak 2 2 tiap loop. 9U.
2. 0itunglah 0itunglah bilangan bilangan triang triangular ular dari dari masukan masukan pengguna, pengguna, yang diba3a diba3a dari dari keyboard keyboard dengan menggunakan s3an"&). !ilangan triangular adalah penjumlahan dari bilangan 9<. 9<. masu masuka kan n deng dengan an sel selur uruh uh bil bilan anga gan n sebe sebelu lumn mny ya. 9=. 9=. 9A. 9ontoh 9B. 7nput :? 9C. Iutput : ? O O O 8 O % O 2 O 1 F 2@ D5. a. ist istin ing g Prog Progrram D!. 7>. 77. 76. 76. 7F. 7?. 7G. 70. 70. 7@. 7@. 7/. 74. 74. 7. 7N. 7. 7,. 7J. 7-. 7S. 7$. 7%. 7'. 7. 7*. 7Y. 7<. 6. 6B.
#inclu #include de !td !tdio. io." " &ai &ain() n() { int iilAu& = 9; prin printf tf(+ (+, ,-/$ -/$0 0/% /% S4 S4 25n 25n-6N7 -6N7- 8 2119 21191 13193 3193: : 8 170 170$B $B5 5n+); n+); prin printf tf(+ (+5 5n=== n==== ===== ===== ===== ===== ===== ====== ==== === ===== ===== ===== ===== ===== ===== === 5n5n 5n5n+) +); ; printf(+,-?- ,6 ,6N?G0$%N? B0 B04N?N $$-0N?%4-5n+); prin printf tf(+ (+5 5n=== n==== ===== ===== ===== ===== ===== ====== ==== === ===== ===== ===== ===== ===== ===== === 5n+) 5n+); ; printf(+5na!ukkan ilangan C +); !canf(+Dd+Eil); printf(+5nGa!il pengulangan C +); for(i=il;i9;iKK) { printf(+Dd +i); Au& = Au& I i; if(i L= 1) printf(+I +); } printf(+= Dd 5n+Au&); }
b. 9apture Program G9. GD.
GG. 3. 5nal 5nalis isis is Prog Progra ram m G4. G6. Untuk menampil menampilkan kan bilangan bilangan triangular triangular seperti seperti O 8 O % O 2 O 1 F 2@, kita dapat menggun menggunaka akan n loopin looping g atau atau pengula pengulanga ngan, n, dimana dimana loopin looping g terseb tersebut ut adalah adalah loopin looping g menurun dengan operator de3rement. Pertama kita harus tahu bilangan maksimal yang diinput diinputkan kan kemudi kemudian an bilang bilangan an terseb tersebut ut kita kita jadika jadikan n patokan patokan nilai nilai awal awal loopin looping. g. elanjutnya bilangan tadi diloop diloop hingga hingga bilangan tersebut habis atau sama dengan nol, di setiap loop putaran, bilangan tersebut dijumlah dengan bilangan sebelumnya dan pada akhirnya total dri seluruh penjumlahan tadi dapat kita peroleh dan tampilkan. G0.
%. 6unakan 6unakan loop loop "or dengan dengan kenai kenaikan kan $ari $aribel bel negat negati" i" untuk untuk menam menampil pilkan kan selur seluruh uh karak karaker er dari C sampai dengan deng an 5 dalam barisbaris yang terpisah. G7. a. ist istin ing g Prog Progrram G(. 6/. 64. 6. 6. 6N. 6. 6,. 6,. 6J. 6J. 6-. 6S. 6S. 6$. 6%. 6'. 6. 6*. 6Y. 6<. F. FB. F>.
#inclu #include de !td !tdio. io." " &ai &ain() n() { int iilAu& = 9; prin printf tf(+ (+, ,-/$ -/$0 0/% /% S4 S4 35n 35n-6N7 -6N7- 8 2119 21191 13193 3193: : 8 170 170$B $B5 5n+); n+); prin printf tf(+ (+5 5n=== n==== ===== ===== ===== ===== ===== ====== ==== === ===== ===== ===== ===== ===== ===== === 5n5n 5n5n+) +); ; printf(+,-?- ,6 ,6N,04 B B@75n+); prin printf tf(+ (+5 5n=== n==== ===== ===== ===== ===== ===== ====== ==== === ===== ===== ===== ===== ===== ===== === 5n+) 5n+); ; printf(+7iketa"ui = Dd Dd da dan < = Dd Dd5n5n+MMM00 < = 9 dan = :O for(i=9;i=:O;iKK) printf(+Dc 5n+i); printf(+5n+); }
b. 9apture Program 4D. 4G.
44. 3. 5nal 5nalis isis is Prog Progra ram m 46. 40. Dalam bahasa 9, setiap karakter karakter memiliki bilangan bilangan 5977 5977 sendiri. sendiri. Untuk huru" kapital, bilangan 5977 karakter Q5R adalah sedangkan C adalah . Maka dari itu, untuk menampilkan abjad se3ara terbalik dari C ke 5, kita dapat melakukan looping se3ara menurun menurun de3reement dari bilangan hingga , kemudian bilangan tersebut tersebut dapat ditampilkan langsung namun harus di"ormat sebagai karakter. 47.
8. 6unakan 6unakan loop "or untuk membuat membuat program program sebagai sebagai berikut: berikut: 4(. input : n 4#. output : 1 2 % 8 ? @ N n 4. a. ist istin ing g Prog Progrram 4M. FN. #includ #include e !tdio." !tdio." F. F,. F,. &ain &ain() () FJ. { F-. int in; FS. F$. printf(+,-/$0/% S 4 5 5n-6N7- 8 21 211913193: 8 170$B5n+); F%. F%. prin printf tf(+ (+5n 5n== ==== ==== ==== ==== ==== ==== ==== ==== ==== ==== ==== ==== ==== ==== ==== ==== ==== ==== ==== == 5n5n 5n5n+) +); ; F'. F'. prin rintf(+ f(+,-??- ,6 ,6N, ,04 B0 B04N? N?N , ,S$0F N6? 6?$0F5n F5n+); F. F. prin printf tf(+ (+5n 5n== ==== ==== ==== ==== ==== ==== ==== ==== ==== ==== ==== ==== ==== ==== ==== ==== ==== ==== ==== == 5n+) 5n+); ; F*. FY. printf(+5na!ukkan Au&la" ilangan C +); F<. !canf(+Dd+En); ?. ?B. printf(+5nGa!il pengulangan C +); ?>. for(i=1;i=n;iII) ?7. { ?6. if(i D 2 == 9) ?F. printf(+Dd +iHK1); ??. el!e ?G. printf(+Dd +i); ?0. } ?@. printf(+5n+); ?/. }
6. b. 9apture Program 6M. 6H.
6I. 3. 5nal 5nalis isis is Prog Progra ram m 6P. 6J.ebenarnya program ini adalah program penampil bilangan biasa, namun ada perbedaan di bilangan kelipatan dua, yaitu bilangan tesebut menjadi bilangan negati". Untuk Untuk melakuk melakukan an hal tersebut tersebut maka di dalam dalam looping looping for for kita perlu menyisipkan decision i" dimana jika bilangan tersebut habis dibagi 2 maka bilangan tersebut akan dikalikan dengan &1) sehingga bilangan tersebut menjadi bilangan negati", sedangkan apabila tidak habis dibagi 2, bilangan tesebut dapat langsung ditampilkan. 6/.
. 6unakan 6unakan loop "or untuk untuk mende"ini mende"inisikan sikan apakah apakah sebuah sebuah bilangan bilangan adalah adalah bilangan bilangan pima 6. atau bukan 6;. input : 2? 6U. 6U. outp output ut : !ila !ilang ngan an adal adalah ah bila bilang ngan an prim primaa 6<. 6<. a. ist istin ing g Prog Progrram 6=. ?*. ?Y. ?<. ?<. G. GB. G>. G7. G7. G6. G6. GF. G?. G?. GG. G0. G@. G/. G4. G. GN. G. G,. GJ. G-. GS. G$. G%. G'. G. G*. GY. G<.
#inclu #include de !td !tdio. io." " &ai &ain() n() { int iili!,ri&a = 1; prin printf tf(+ (+, ,-/$ -/$0 0/% /% S4 S4 O5n O5n-6N7 -6N7- 8 2119 21191 13193 3193: : 8 170 170$B $B5 5n+); n+); prin printf tf(+ (+5 5n=== n==== ===== ===== ===== ===== ===== ====== ==== === ===== ===== ===== ===== ===== ===== === 5n5n 5n5n+) +); ; printf(+,-?- ,6 ,6N?6>6/ B04N?N ,-05n+); prin printf tf(+ (+5 5n=== n==== ===== ===== ===== ===== ===== ====== ==== === ===== ===== ===== ===== ===== ===== === 5n+) 5n+); ; printf(+5na!ukkan ilangan C +); !canf(+Dd+Eil); for(i=ilK1;i1;iKK) { if(il D i == 9 88 il == 1 ) { i!,ri&a = 9; reak; } } if(i!,ri&a) printf(+5nBilangan Dd 74G ilangan pri&a.5n+il); el!e printf(+5nBilangan Dd B%/N ilangan pri&a.5n+il); printf(+5n5n+); }
75. b. 9apture Program 7!.
79. 3. 5nal 5nalis isis is Prog Progra ram m 7D. !ilanga !ilangan n prima prima adalah adalah bilanga bilangan n yang hanya hanya habis habis dibagi dibagi dengan dengan bilang bilangan an 1 dan bilangan itu sendiri. Dari de"inisi tersebut dapat kita aplikasikan ke dalam bahasa pemrograman, yaitu untuk mende"iniskan suatu bilangan apakah apak ah prima atau tidak kita dapat menggunakan menggunakan looping looping for for menurun sesuai dengan bilangan prima tadi hingga bilangan 1, dimana di setiap loop putaran kita akan 3oba apakah bilangan tersebut habis dibagi dibagi dengan bilangan lain dibawahnya dibawahnya ke3uali ke3uali bilangan 1 atau tidak, apabila habi habiss diba dibagi gi,, maka maka loop loop akan akan berh berhen enti ti dan dan lang langsu sung ng dapa dapatt kita kita de"i de"ini nisi sika kan n bahwasannya bilangan tersebut (uanlah lah bila bilanga ngan n prim primaa bila bila tidak tidak ada ada satu satupu pun n bilangan di bawah b awah bilangan tersebut yang membanginya habis, maka bilangan tersebut adalah bilangan prima. 7G.
. Dengan mengguna menggunakan kan looping looping dan swit3h swit3h 3ase atau atau else else i" buatlah buatlah program program dalam dalam 9 untuk menghitung menghitung 7ndeks Prestasi emester emester seorang seorang mahasiswa, mahasiswa, dimana dimana yang diinputkan adalah nilai huru" dari mata kuliah yang diikutinya dan jumlah jam mata kuliah tsb. Dimana kon$ersi nilai huru" ke angka untuk menghitung 7P adalah sebagai berikut: 5 E 8, !E%, 9E2, DE1, GE dan rumus 7P F jumlah &nilai S jam)jumlah jam keseluruhan. 74. a. ist istin ing g Prog Progra ram m 76. 0G. 00. 0@. 0/. 04. 0. 0N. 0. 0,. 0,. 0J. 0J. 0-. 0-. 0S. 0S. 0$. 0%. 0'. 0. 0*. 0Y. 0<. @. @B. @>. @7. @6. @F. @?. @G. @0. @@. @/. @4. @. @N. @. @,. @J. @-. @S. @$. @%. @'. @. @*. @Y. @<. /. /B. />. /7. /6. /F. /?. /G. /G. /0. /@. //.
b.
#inclu #include de !tdio !tdio." ." &ain() { int i; float nilaingka Aa& Au&Nilai@a& = 9 Au&@a& = 9 ip!; c"ar nilaiGuruf; prin printf tf(+ (+, ,-/$ -/$0 0/% /% S4 S4 :5n :5n-6N7 -6N7- 8 2119 21191 13193 3193: : 8 170 170$B $B5 5n+); n+); prin printf tf(+ (+5 5n=== n==== ===== ===== ===== ===== ===== ====== ==== === ===== ===== ===== ===== ===== ===== === 5n5n 5n5n+) +); ; prin printf tf(+ (+, ,-?-?- ,6N ,6N?G0$ ?G0$% %N? 0N76/ N76/S S ,-6S ,-6S$ $S0 S0 S66 S66N N$- $-5 5n+); n+); prin printf tf(+ (+5 5n=== n==== ===== ===== ===== ===== ===== ====== ==== === ===== ===== ===== ===== ===== ===== === 5n+) 5n+); ; for(i=1;i=O;iII) { fflu!"(!tdin); printf(+5na!ukkan nilai "uruf &ata kulia" Dd 5tC +i); !canf(+Dc+EnilaiGuruf); printf(+a!ukkan Au&la" Aa& &ata kulia" Dd 5tC +i); !canf(+Df+EAa&); !Pitc"(nilaiGuruf) { ca!e MMC ca!e MaM C nilaingka reak; ca!e MBMC ca!e MMC nilaingka reak; ca!e M>MC ca!e McMC nilaingka reak; ca!e M7MC ca!e MdMC nilaingka reak; ca!e M6MC ca!e MeMC nilaingka reak; }
= ;
= 3;
= 2;
= 1;
= 9;
Au&Nilai@a& = Au&Nilai@a& I nilaingka H Aa&; Au&@a& = Au&@a& I Aa&; printf(+5n+); } ip! = Au&Nilai@a& Au&@a&; prin printf tf(+ (+5 5n0nd n0nde ek! ,re! ,re!ta ta! !i Se&e Se&ent nta ara anda anda adal adala" a" D.2f D.2f+ +ip! ip!) ); printf(+5n5n+); }
b. 9apture Program #. a #M.
#H. 3. 5nal 5nalis isis is Prog Progra ram m #I. #P.Pada program ini, setiap looping akan meminta masukkan input dari user berupa nilai huru" dan jumlah jam dari sebuah mata kuliah. 5gar nilai dapat diproses, maka harus dikon$ersi terlebih dahulu menjadi nilai angka, yaitu dengan menggunakan pernyataan switch. switch. !aru setelah itu nilai dapat diolah sedemikian rupa sehingga dapat diketahui output berupa indeks prestasi sementara dari siswa pemilik nilainilai tersebut. #J.
KR. Kesi' esi'p pulan lan #. 1. Pernyataan for adalah adalah salah salah satu satu pernya pernyataa taan n dalam dalam bahasa bahasa permro permrogra graman man yang yang digunakan untuk menjalankan pengulangan. 2. Pengu Pengula lang ngan an denga dengan n mengg menggun unaka akan n perny pernyat ataa aan n for membutuhkan % parameter yang harus diketahui terlebih dahulu yaitu inisialisai, batas dan pengendali loop. %. Pengu Pengula lang ngan an meng menggun gunak akan an for for , dapat berupa pengulangan yang menurun atau menaik sesuai dengan operator in3rement atau de3rement yang kita gunakan. 8. Di dalam strukt struktur ur pengulangan pengulangan kita kita dapat memberika memberikan n statementst statementstatemen atementt atau pernyataanpernyataan yang nantinya diulang sesuai dengan pengulangan atau loopingnya. . (ika stateme statemen n yang dijalankan dijalankan hanya hanya satu, satu, maka tidak tidak membutuhkan membutuhkan kurung kurung kurawal kurawal *+ bila lebih dari satu maka harus diberikan kurung kurawal sebagai penanda sebuah blok statement. #;.
KU. K1.
PRAKTIKUM *0 Looping : 2hile3 do 4 2hile
K5. K5. A. Dasar Dasar Te Teori K6. #B. #B. epe epert rtii yang yang sud sudah ah dij dijel elas aska kan n pada pada bab bab seb sebel elum umny nya, a, bah bahwa wa per perul ulan anga gan n yang yang sudah diketahui berapa kali akan dijalankan, maka sebaiknya menggunakan perulangan "or. edangkan yang belum diketahui diketahui berapakali akan diulangi maka dapat menggunakan while atau dowh dowhil ile. e. Mengg Menggun unaka akan n perny pernyata ataan an whil whilee keti ketika ka kondi kondisi si perlu perluan angan gan dipe diperi riks ksaa sebel sebelum um menjalankan pernyataan dan menggunakan doTwhile ketika perulangan kodisiperulangan tersebut diperiksa setelah mejalankan pernyataan. #C. Pada pernyat pernyataan aan whil while, e, pemer pemeriks iksaan aan terha terhadap dap loop loop dilak dilakuka ukan n di bagia bagian n awal awal &sebelum tubuh loop). Pernyataan while akan diulangi terus selama kondisi bernilai benar, atau diulangi diulangi selama selama kondisinya kondisinya benar, benar, jika kondisinya kondisinya salah maka perulangan perulangan &loop) dianggap selesai. ebih jelasnya, bentuk pe rnyataan while adalah sebagai berikut :
5. !. !. deng dengan an per perny nyat ataa aan n dapat dapat ber berup upaa per pernyat nyataa aan n tung tungga gall, pern perny yataa ataan n maje majemu muk k ataupun ataupun pernyataan pernyataan kosong. kosong. Dengan melihat melihat gambar 1.1, tampak bahwa ada kemungkinan pernyataan yang merupakan tubuh loop tidak dijalankan d ijalankan sama sekali, yaitu kalau hasil pengujian kondisi while yang pertama kali kali ternyata bernilai salah. 9. 9.
Pros Proses es peng pengul ulan anga gan n terh terhad adap ap pern pernya yata taan an dije dijela lask skan an pada pada gamb gambar ar 1.1 1.1..
D. G.
B. Tugas Pendahul Pendahuluan uan LF. LF. 1) 4low3hart program menampilkan L7.ke3uali bilangan A semua bilangan & besar). 0.
2) 4low3hart program menjumlah inputan beberapa data
LI. L-.
START
START LK. LL. jum = 0 LM. j5b = 7 L". L#.
START
READ %u&u.
P.
%) 4low3hart program men3ari jumlah, nilai maksimal, maksimal, nilai minimal dari inputan beberapa data data
i=0 min = 0 ma4 = 0 jum = 0 j5b = 7
READ n READ n
IF huruf != ‘X’
N Y PRINT %u&u.
jum = jum + bil jum = jum + bil READ j5b READ j5b
END IF
jwb == ‘y’
N Y READ bil
PRINT jum
IF ma4 < bil 88 ma4 == 0
Y
N
ma4 = bil
IF min > bil 88 min == 0
Y
N
min = bil
END IF
jwb == ‘y’
N Y READ bil
PRINT jum
END
) 4low3hart program mengitung jumlah karakter dan spasi. spasi.
8) 4low3hart program menampilkan J. deret angka 1 % 1 1 21N. n
START
START
i=1 9:9al = 0
jumHu&u. = 0 jumSa"i = 0
READ n
READ %u&u.
IF i <= n
IF %u&u. == ;
N
N
Y Y
9:9al = 9:9al + i
umHu&u.++
jumSa"i++ PRINT 9:9al
Y
i=i+2
IF
huruf != ‘\n’
END N END
START
9:9al = 2000, "i"a = 9:9al i=1
?) 4low3hart menghitung lamanya bulan pen3i3ilan biaya haji
READ $i$ilan/ nai, i++
IF "i"a > 0
N Y
IF i ' 12 == 0
Y
"i"a = 9:9al + 9:9al * nai, 3100
N
"i"a = "i"a - $i$ilan
END
PRINT i
/. .) 4low3hart program
A
menghitung jumlah angka dari suatu bilangan IF ,a& == ;1
Y
START N
an#,a = 1
jum = 0 IF ,a& == ;2
READ ,a&
N
IF ,a& == ;(
A
N
jum = jum + an#,a
IF ,a& == ;
N PRINT ,a& IF ,a& == ;
Y
IF
huruf != ‘\n’
N PRINT ,a&
N
IF ,a& == ;6
N
IF ,a& == ;
Y
an#,a = 2
Y
an#,a = (
Y
an#,a =
Y
an#,a =
Y
an#,a = 6
Y
END N
IF ,a& == ;
N
IF ,a& == ;!
an#,a =
Y
an#,a = Y
N
an#,a = !
an#,a = 0
C. Per/ Per/o( o(aa aan n LT.. LT 1. 6una unakan lo loop while untuk membuat membuat program program yang dapat menampilkan menampilkan semua karakter yang diketikkan di keyboard sampai yang diketikkan pada keybord huru" QAR & besar). U. a. isti isting ng Pro Progr gram am <. <. 4. #include !tdio." 4*. 4Y. &ain() 4<. { . c"ar "uruf; B. >. printf(+,-/$0/% 19 19 S S4 15 15n-6N7- 8 21 211913193: 8 170$B5n+); 7. printf(+5n======================================== 5n5n+); 6. printf(+,-?- B6-G6N$0 /6$0/ * 70$6/N5n+); F. printf(+5n======================================== 5n 5n+); ?. G. printf(+5n/etik !e&arang karakter ke&udian 6nter C 5n+); 0. @. "uruf = getc"ar(); /. 4. P"ile("uruf L= M*M) . { N. "uruf = getc"ar(); . } ,. J. printf(+,rogra& di"entikan karena anda &enginputkan karakter *5n+); -. }
M. b. 9apture Program M;. MU.
M<. M<. 3. 5nal 5nalis isis is Prog Progra ram m M=. M=. MA. Pada Pada prog progrram ini, ini, peng pengul ulan anga gan n whi while akan akan mel melakuk akukan an sel seleksi eksi terh terhad adap ap masukkan yang diinputkan user. Pengulangan while akan terus dijalankan selama kondisi benar yaitu ketika karakter yang dimasukkan tidak sama dengan A & besar). MB. MB. 2. 6unakan lo loop while untuk untuk membuat membuat program program yang yang dapat men3ari men3ari total total angka yang yang dimasukkan. MC. a. isti isting ng Pro Progr gram am H5. NB. #include !tdio." N>. N7. &ain() N6. { NF. int i = 1 Au& = 9 il; N?. c"ar AP; NG. N0. printf(+,-/$0/% 19 19 S S4 25 25n-6N7- 8 21 211913193: 8 170$B5n+); N@. printf(+5n======================================== 5n5n+); N/. printf(+,-?- ,6N@%4G B04N?N5n+);
N4. N. NN. N. N,. NJ. N-. NS. N$. N%. N'. N. N*. NY. N<. . B. >. 7. 6.
printf(+5n======================================== 5n 5n+); do { fflu!"(!tdin); printf(+5na!ukkan ilangan ke Dd 5t = +i); !canf(+Dd+ Eil); Au& = Au& I il; printf(+au coa lagi QY$R +); fflu!"(!tdin); !canf(+Dc+EAP); iII; } P"ile(AP == MYM 88 AP == MyM); printf(+5nGa!il penAu&la"an diata! adala" Dd+Au&); }
I4. I4.
b. 9apture Program I6. I0.
I7. 3. 5nal 5nalis isis is Prog Progra ram m I(. I#. I#. #are #arena na prog program ram ini ini seti setida dakny knyaa har harus us dija dijala lanka nkan n min minim imal al sekal sekali, i, maka maka jeni jeniss pengulangan yang 3o3ok adalah pengulangan do whi while. le. Unt Untuk set setiap iap kali kali pengulangan, program akan meminta untuk menginputkan bilangan, dari setiap pengulangan tadi akan dilakukan operasi penjumlahan. #etika pengulangan berhenti, yaitu ketika user memasukkan karakter ;, hasil penjumlahan dari semua bilangan yang dimasukkan tadi dapat ditampilkan segera. I. IM.
%. Pada Pada progr program am no 2 tamb tambah ahkan kan ratar ratarat ata, a, maks maksim imum um dan minimu minimum m dari dari angka angka yang dimasukkan. IH. a. isti isting ng Pro Progr gram am II. ,. #include !tdio." J. -. &ain() S. { $. int i = 1 Au& = 9 rata = 9 &in=9 &aT=9 il; %. c"ar AP = MyM; '. . printf(+,-/$0/% 19 19 S S4 35 35n-6N7- 8 21 211913193: 8 170$B5n+); *. printf(+5n======================================== 5n5n+); Y. printf(+,-?- ,6N@%4G B04N?N5n+); <. printf(+5n======================================== 5n 5n+); ,. ,B. P"ile(AP == MYM 88 AP == MyM) ,>. { ,7. fflu!"(!tdin);
,6. ,F. ,?. ,G. ,0. ,@. ,/. ,4. ,. ,N. ,. ,,. ,J. ,-. ,S. ,$. ,%. ,'. ,. ,*. ,Y. ,<. J. JB. J>.
printf(+5na!ukkan ilangan ke Dd 5t = +i); !canf(+Dd+ Eil); Au& = Au& I il; if(&aT il 88 &aT == 9) &aT = il; if(&in il 88 &in == 9) &in = il; printf(+au coa lagi QY$R +); fflu!"(!tdin); !canf(+Dc+EAP); iII; } rata = Au& (i K1); printf(+5n$otal ilangan 5t= Dd+Au&); printf(+5n-ataKrata 5t= Dd+rata); printf(+5nNilai ini&al 5t= Dd+&in); printf(+5nNilai ak!i&al 5t= Dd+&aT); }
JD. b. 9apture Program JG. J4.
J6. 3. 5nal 5nalis isis is Prog Progra ram m J0. J7. J7. ama ama deng dengan an soal soal no 2, beda bedany nyaa dis disin inii kit kitaa har harus us men3a en3ari ri nila nilaii mak maksi sima mal, l, minimum dan ratarata. Untuk memperoleh nilai maksimal kita bandingbandingkan nilai yang dimasukkan setiap pengulangan. (ika nilai yang dimasukkan lebih besar dari nilai maksimal sebelumnya maka nilai maksimal adalah nilai tersebut. 5pabila nilai yang dimasukkan lebih ke3il daripada nilai minimal sebelumnya yang ada, maka nilai minimal adalah nilai tersebut. edangkan nilai ratarata didapat dari jumlah semua bilangan yang kemudian dibagi dengan jumlah pengulangan. J(. J#.
8. Dengan menggunakan menggunakan pernyat pernyataan aan looping, looping, buatlah buatlah program program berikut: berikut: J. 7nput : n JM. output : 1 % 1 1 21 2@ N. !ilangan ke n JH. a. isti isting ng Pro Progr gram am JI. J,. #include !tdio." JJ. J-. &ain() JS. { J$. int intotal=9; J%. printf(+,-/$0/% 19 19 S S4 5 5n-6N7- 8 21 211913193: 8 170$B5n+); J'. printf(+5n======================================== 5n5n+); J. printf(+,-?- ,6N,04 B-0S ?66$-05n+); J*. printf(+5n======================================== 5n 5n+); JY. J<. printf(+5na!ukkan Au&la" ilangan C +); -. !canf(+Dd+En); -B. ->. printf(+5nGa!il pengulangan C +); -7. for(i=9;in;iII) -6. { -F. total = total I i; -?. printf(+Dd +total); -G. } -0. printf(+5n+); -@. }
/#. b. 9apture Program /. /M.
/H. 3. 5nal 5nalis isis is Prog Progra ram m /I. /P. Pada program ini, step atau langkah tiap pengulangan dimodi"ikasi sehingga di setiap perulangan step atau langkah bertambah 1. Dengan 3ara tersebut maka akan dapat ditampilkan deret seperti diatas. /J. . 6unakan while while pada program yang digunakan untuk menghitung banyaknya banyakn ya karakter dari dari kalima kalimatt yang dimasu dimasukka kkan n melalu melaluii keyboar keyboard d &terma &termasuk suk karakt karakter er spasi) spasi).. Untuk Untuk mengakhiri pemasukan kalimat, tombol GH;G/ &QVnR) harus ditekan //. /. 7nput : #etikkan sembarang kalimat /;. Iutput : /U. /<. jumla umlah h kar karakte akterr F m /=. jumlah spasi F n /A.
a. isti isting ng Pro Progr gram am /B. /B. -<. #include !tdio." S. SB. &ain() S>. { S7. c"ar karakter; S6. int Au& = 9Au&!pa!i=9; SF. S?. printf(+,-/$0/% 19 19 S S4 O5 O5n-6N7- 8 21 211913193: 8 170$B5n+); SG. printf(+5n======================================== 5n5n+); S0. printf(+,-?- ,6N?G0$%N? @%4G /-/$6-5n+); S@. printf(+5n======================================== 5n 5n+); S/. printf(+5na!ukkan kali&at !e&arang = +); S4. do S. { SN. !canf(+Dc+Ekarakter); S. S,. if(karakter == M M) SJ. Au&!pa!iII; S-. el!e SS. Au&II; S$. S%. } P"ile(karakter L= M5nM); S'. S. printf(+5n@u&la" !e&ua karakter 5t = Dd+Au&); S*. printf(+5n@u&la" karakter !pa!i 5t = Dd+Au&!pa!i); SY. }
C. b. 9apture Program ;5. ;5. ;!.
;9. 3. 5nal 5nalis isis is Prog Progra ram m ;D. ;G. Peng Penggu guna naan an do do whil whilee pada pada prog progra ram m ini ini di" di"ungs ungsik ikan an seb sebag agai ai pen pengu gullanga angan n untuk setiap karakter atau spasi yang dimasukkan user. Untuk setiap pengulangan, program akan men3atat dan menghitung jumlah karakter atau spasi yang diinputkan se3ara se3ara in3rem in3rement ent.. #etika #etika pengul pengulang angan an selesa selesaii atau atau ketika ketika user user meneka menekan n WGnter WGnterX, X, program akan menampilkan jumlah dari karakter dan spasi yang dimasukkan tadi. ;4.
. !uatlah !uatlah program program untuk untuk menghit menghitung ung jumlah jumlah angka angka dari dari suatu suatu bilangan. bilangan. ;6. 9ontoh 9ontohnya nya : (umlah (umlah angka angka dari dari bilang bilangan an %2 F % O 2 O O F 1 ;0. ;0. (uml (umlah ah angka angka dar darii bil bilan anga gan n 8@ 8@ F 8 O O @ O F 2 2 ;7. dan sebagainya ;( . . a. ist istin ing g Prog Progrram ;#. $4. #include !tdio." $. $N. &ain() &ain() $. $. { $,. c"ar kar; $J. int iangkaAu& = 9; $-. $S. $S. prin printf tf(+ (+, ,-/$ -/$0 0/% /% 19 S S4 :5n:5n-6N 6N7 7- 8 2119 211913 1319 193 3: 8 170$ 70$B B5n+) 5n+); ; $$. $$. prin printf tf(+ (+5 5n=== n==== ===== ===== ===== ===== ===== ====== ==== === ===== ===== ===== ===== ===== ===== === 5n5n 5n5n+) +); ; $%. printf(+,6N?G0$%N? @% @%4G N? N?/ S% S%$% B0 B04N?N5n+); $'. $'. prin printf tf(+ (+5 5n=== n==== ===== ===== ===== ===== ===== ====== ==== === ===== ===== ===== ===== ===== ===== === 5n+) 5n+); ; $. $*. printf(+5na!ukkan ilangan5t = +); $Y. $<. i = 1; %. do %B. { %>. kar = getc"ar(); %7. %6. !Pitc"(kar) %F. { %?. ca!e M1MC angka = 1; reak; %G. ca!e M2MC angka = 2; reak; %0. ca!e M3MC angka = 3; reak; %@. ca!e MMC angka = ; reak; %/. ca!e MOMC angka = O; reak; %4. ca!e M:MC angka = :; reak; %. ca!e MUMC angka = U; reak; %N. ca!e MVMC angka = V; reak; %. ca!e MMC angka = ; reak; %,. ca!e M9MC angka = 9; reak; %J. } %-. %S. if(kar L= M5nM) %$. { %%. Au& = Au& I angka; %'. if(i L= 1) eng"ilangkan I pada angka perta&a %. printf(+I +); %*. printf(+Dd + angka); %Y. iII; %<. } '. 'B. } P"ile(kar L= M5nM); '>. printf(+5 5 = Dd 5n5n+Au&); '7. '7. } '6.
b. 9apture Program <4. <6.
<0. 3. 5nal 5nalis isis is Prog Progra ram m <7. <(. Untuk Untuk melaku melakukan kan operasi operasi jumlah jumlah angka angka suatu suatu bilanga bilangan, n, hal yang yang perlu perlu kita kita laku lakuka kan n adal adalah ah memb memba3a a3a input inputan an bila bilanga ngan n user user kara karakt kter er per per karak karakte terr dahul dahulu. u.
#emu #emudi dian an dari dari tiap tiap kara karakt kter er tadi tadi kita kita kon$e kon$ers rsii menj menjad adii bila bilanga ngan n atau atau inte integer ger menggunakan decision switch decision switch sehingga sehingga dapat kita hitung dan ketahui jumlah dari tiap angka di bilangan tersebut. <#. ?. eorang eorang mau menab menabung ung untuk untuk pembiay pembiayaan aan ibadah ibadah hajiny hajinya. a. !iaya !iaya ibadah ibadah haji haji saat ini ini senilai a juta. (ika tiap bulan dia mampu menabung sebesar b rupiah. Dengan program anda yang menggunakan "ungsi, bantulah orang ini untuk menghitung berapa bulan dia butuhkan agar biaya hajinya bisa terpenuhi. Bang menjadikan masalah ini tidak dapat diseles diselesaikan aikan dengan dengan pembagian pembagian langsun langsung g ab adalah adalah bahwa setia setiap p tahun biaya haji naik ratarata 3Y dari biaya awal &a). Hilai a, b, 3 dimasukkan oleh user. <. a. isti isting ng Pro Progr gram am 0>04N G@05n+); '*. printf(+5n======================================== 5n 5n+); 'Y. '<. printf(+5na!ukkan total iaya "aAi5t = -p.+); . !canf(+Df+Etotal); B. printf(+5na!ukkan cicilan tiap ulan5t = -p.+); >. !canf(+Df+Ecicilan); 7. printf(+5na!ukkan pro!enta!e kenaikan tiap ta"un = +); 6. !canf(+Df+Ekenaikan); F. ?. !i!a = total; G. P"ile(!i!a 9) 0. { @. iII; /. if(i D 12 == 9) 4. !i!a = !i!a I (total H (kenaikan 199)); . !i!a = !i!a K cicilan; N. } . ,. printf(+5naktu ya yang di d iutu"kan un u ntuk &e & eluna!i i iaya "a " aAi adala" Dd ulan+i); J. } -.
b. 9apture Program =. =;.
=U. =<. =<. ==. 3. 5nal 5nalis isis is Prog Progra ram m
=A. =B. =B. ese eseor oran ang g dika dikata taka kan n lun lunas as membay membayar ar apab apabil ilaa sis sisaa pin pinjam jaman anny nyaa tid tidak ak lebi lebih h dari dari nol nol Untu Untuk k meng menghi hitu tung ng juml jumlah ah bula bulan n pelu peluna nasa san n sepe sepert rtii ini, ini, kita kita dapa dapatt menggunakan menggunakan pengulangan pengulangan do while while yaitu pengulangan sampai sisa pinjaman habis. Perlakuan khusus dengan pernyataan if diberikan diberikan tiap bulan ke12, karena pada bulan terseb tersebut ut jumlah jumlah pinjam pinjaman an mening meningkat kat sebany sebanyak ak n Y dari dari jumlah jumlah total total pinjam pinjaman an sehingga menyebabkan proses pelunasan menjadi lebih lama. =C.
D. Tugas Tugas Ta'(ahan a'(ahan 6A. 1. ;ambahka ;ambahkan n program yang ada pada soal soal no 8 dengan dengan menghitung menghitung huru" huru" ke3il, ke3il, huru" besar dan karakter angka. A!. a. isti isting ng Pro Progr gram am A9. *7. #include !tdio." *6. *F. &ain() *?. { *G. c"ar karakter; *0. int Au&!pa!i=9Au&upp=9Au&loP=9Au&int=9; *@. */. printf(+,-/$0/% 19 S4 $a&a"an5n-6N7- 8 211913193: 8 170$B5n+); *4. printf(+5n======================================== 5n5n+); *. printf(+,-?- ,6N?G0$%N? @%4G /-/$6-5n+); *N. printf(+5n======================================== 5n+); *. *,. printf(+ = Dd < = Dd a = Dd W = Dd 9 = Dd = Dd 5n+MMM. Au&intII; Y7. Y6. } P"ile(karakter L= M5nM); YF. Y?. printf(+5n@u&la" !e&ua karakter 5t = Dd+Au&!pa!i I Au&upp I Au&loP I Au&int); YG. printf(+5n@u&la" karakter !pa!i 5t = Dd+Au&!pa!i); Y0. printf(+5n@u&la" karakter kapital5t = Dd+Au&upp); Y@. printf(+5n@u&la" karakter kecil 5t = Dd+Au&loP); Y/. printf(+5n@u&la" karakter angka 5t = Dd+Au&int); Y4. }
BM. BH. BI. BP. b. 9apture Program BJ.
B/.
B. 3. 5nal 5nalis isis is Prog Progra ram m B;. BU. BU. 0amp 0ampir ir sama sama deng dengan an soal soal no , , soa soall ini ini ada adala lah h peng pengem emba bang ngan anny nyaa dima dimana na setiap inputan yang berupa karakter kita seleksi menggunakan de3ision if sesuai sesuai dengan nilai 5977 masingmasing karakter. B<. B<. 2. Untuk soal soal no. jika jika nilai 3 adalah adalah kenaikan kenaikan dari dari tahun sebelum sebelumnya nya dan setiap setiap bulan sekali dia mendapatkan bonus gaji sebesar d ribu yang selalu dia gunakan untuk menambah tabungan hajinya berapa bulan dia butuhkan agar biaya hajinya terpenuhi B=. a. isti isting ng Pro Progr gram am BA. YY. #include !tdio." Y<. <. &ain() . float totalcicilankenaikanonu!!i!a; <7. int i = 9; <6. 0>04N G@05n+); <0. printf(+5n======================================== 5n+); <@. . 7. !i!a = !i!a K cicilan; 6. } F.
?. printf(+5naktu yang diutu"kan untuk &eluna!i iaya "aAi adala" Dd ulan+i); G. 0. }
55(. b. 9apture Program 55#. 55.
55M. 3. 5nal 5nalis isis is Prog Progra ram m 55H. 55I. 55I. Penge Pengemb mban anga gan n dari dari soal soal no no ? dima dimana na set setia iap p bulan bulan seka sekali li sis sisaa pinj pinjam aman an akan dikurangi jumlah bonus yang diterima. Untuk mengatasi hal ini, sama seperti sebelumnya yaitu menggunakan operator modulus untuk mengetahui inter$al bulan tersebut. 55P.
E. Kesi' Kesi'pu pula lan n AA$. 1. Pernyataan while while dan do while adalah pernyataan pernyataan lain selain for selain for yang digunakan untuk melakukan pengulangan pada program 2. Perbedaan while while dan do while dengan for dengan for terletak terletak pada parameterparameternya dimana pada for sudah diketahui diketahui berapa kali kali akan akan dijalankan. dijalankan. edangka edangkan n pada while while dan dan do while tidak. while tidak. %. Pada per pernya nyataan whil whilee kondisi diperiksa di awal ketika akan melakukan pengulangan sehingga bisa saja pengulangan tidak terjadi. 8. Pada Pada pern pernya yata taan an do while kondisi diperiksa di akhir pengulangan sehingga mau tidak mau program akan dijalankan minimal satu kali. 55/. 55.
AAT AAT. PRAK PRAKTI TIKU KUM M ** ** AAU.
Looping : Looping : (rea3 /o /on8inue3 ne nes8ed lo loop
AA1. A. Dasar Dasar Te Teori 55=. 55A. 55A. Untu Untuk k kelu keluar ar dar darii per perul ulan anga gan nlo loop op dapa dapatt dil dilak akuka ukan n sete setela lah h sara saratt peru perula langa ngan n dipenuh dipenuhi. i. 5kan 5kan tetapi tetapi ada 3ara 3ara lain lain untuk untuk keluar keluar dari perulang perulangan an walaupun walaupun sarat sarat belum terpenuhi, yaitu dengan menggunakan pernyataan break . Pernyataan break sesungguhnya telah diperkenalkan pada pernyataan swit3h. Pernyataan ini ber"ungsi untuk keluar dari loop for, do-while dan while. while. edangkan pada switch pada switch yaitu untuk menuju menuju ke akhir &keluar dari) struktur swit3h. Pernyataan break digunakan untuk keluar dari satu blok 55B 55B. ela elain in per perny nyat ataa aan n brea break k ada ada juga juga pern pernya yata taan an yan yang g berh berhub ubun unga gan n deng dengan an perulangan yaitu pernyataan continue. continue. Pernyataan continue digunakan untuk mengarahkan eksekus eksekusii ke itera iterasi si &pro &proses ses)) beriku berikutny tnyaa pada loop loop yang sama sama.. Pada dowhi dowhile le dan while, while, pernyataan 3ontinue menyebabkan eksekusi menuju ke kondisi pengujian pengulangan. Pada Pad a loop loop "or, "or, pernya pernyataa taan n 3ontinu 3ontinuee menyeb menyebabka abkan n bagian bagian penaik penaik $ariab $ariabel el pengend pengendali ali loop loop dikerjakan dikerjakan dan kondisi kondisi untuk keluar dari loop "or diuji kembali. kembali. 7lustrasi 7lustrasi "low3hart "low3hart yang menunjukkan perbedaan perbeda an break dan 3ontinue ditunjukkan pada gambar 11.1. 55C.
5!5. !5. ela elaiin dua dua pern perny yataa ataan n diat diatas as masi masih h ada ada pern perny yataa ataan n yang ang ber berhubu hubung ngan an dengan loop yaitu goto. Pernyataan goto merupakan intruksi untuk mengarahkan eksekusi ke pernyataan pernyataan yang diawali diawali dengan suatu label. abel sendiri berupa suatu pengenal pengenal &identi"ier) yang diikuti dengan tanda titik dua &:) 5!!. 9ontoh pe pemakaian go goto: ABC. goto cetak; 5!D. !D. Meng Mengis isy yarat aratka kan n agar agar eksek eksekus usii dil dilanju anjuttkan kan ke per pernyat nyataa aan n yang ang diaw diawal alii dengan label 3etak: . Pernyataan ini sebaiknya tidak digunakan.
5!G. !G. Untuk ntuk meng menghe hent ntiikan kan prog progra ram m tanpa anpa haru haruss meny enyeles elesai aika kan n sampa ampaii akhi akhir r pernyataan, yaitu melalui pemanggilan "ungsi eit&). 0al ini biasa dilakukan, jika di dalam suatu eksekusi terdapat suatu kondisi yang tak dikehendaki. Prototipe dari "ungsi eit&) dide"inisikan pada "ile stdlib.h, yang memiliki deklarasi sebagai berikut : ABF. ABF. void exit(int status; AB!. 5!0. 5!0. stat status us bia biasa sanya nya dib diber erii nila nilaii untu untuk k pern pernghe ghent ntia ian n progr program am se3a se3ara ra nor norma mal. l. ABI. AB-. Loop di dala' Loop 5!#. 5!. 5!. Dalam Dalam suatu suatu loop bisa terkand terkandung ung loop loop yang lain, lain, sehingga sehingga jika loop loop tersebut tersebut diulangi diulangi n kali dan loop yang didalamnya didalamnya dijuga dilakukan dilakukan m kali maka pernyataan pernyataan yang berada didalam nested loop loop sebanyak n n. oop yang terletak di dalam loop biasa disebut dengan loop di dalam loop &nested loop). alah satu contoh nested loop misalnya loop misalnya pada permasalahan untuk membuat tabel perkalian: 5!M.
5!H. 5!I. 5!P 5!P. 7mpl 7mpleme ement ntas asii dala dalam m prog progra ram m sele seleng ngkap kapny nyaa adal adalah ah sebag sebagai ai berik berikut ut : BJ. B-. B-. for for (ar (ari! i! = 1; ar ari! i! = = /S /S; ; ari ari!I !II) I) { BS. for (kolo& = 1; ko kolo& = = /S; ko kolo&II) { B$. B$. "a!ilX "a!ilXkal kali i = ari! ari! H kolo kolo&; &; B%. B%. printf printf (+D2d+ (+D2d+ "a!i "a!ilXk lXkali ali); ); B'. } B. printf(+5n+); H pi pinda" ari! H H B*. } BY.
5!C. 5!C. >. >B. >B. >>.
>F. >?.
590. 590. 597. >@. >@. >/.
!agi !agian an yang yang terl terlet etak ak dal dalam am bing bingkai kai di depan depan dap dapat at dapat dapat dipe diperol roleh eh mela melalu luii for for (ar (ari! i! = 1; ar ari! i! = = /S /S; ; ari ari!I !II) I) { >7. >7. "a!i "a!ilX lXka kali li = ar ari! i! H kol kolo& o&; ; >6. >6. prin printf tf (D (D2d 2dZ Z "a! "a!il ilXk Xkal ali) i); ; }
denga dengan n M5# M5# dide" dide"in inis isik ikan an bern bernil ilai ai @. !agi !agian an loop loop yang yang terd terdal alam am : for for (kol (kolo& o& = 1; kol kolo& o& = = /S /S; ; kolo kolo&I &II) I) { >4. >4. "a!i "a!ilX lXka kali li = ar ari! i! H kol kolo& o&; ; >. >. prin printf tf (D (D2d 2dZ Z "a! "a!il ilXk Xkal ali) i); ;
59H. + 59I. 59P 59P. digu diguna naka kan n untuk untuk men3 men3et etak ak suat suatu u deret deret hasi hasill perka perkali lian an dala dalam m satu satu baris baris.. Untuk Untuk berpindah ke baris berikutnya, pernyataan yang digunakan yaitu printf(5nZ); 5dapun pen3etakan untuk semua baris dikendalikan melalui 59J.
>-. >-.
for for (ar (ari! i! = 1; ar ari! i! = = /S /S; ; ari ari!I !II) I)
59. 59;. 9;. Pern Perny yataa ataan n di atas atas mem mempuny punyai ai arti arti Kdar Kdarii bari bariss ke ke1 sampa ampaii deng dengan an bari bariss ke ke M5#L. 59U.
B. Tugas Pendahul Pendahuluan uan AC1. 1) 4low3hart program yang akan berhenti AC5. ketika user menekan GH;G/
2) 4low3hart program menampilkan bilangan di bawah 1 ke3uali kelipatan kelipatan ? dan 11 START
START
i=1
,a& = ;
READ n READ ,a&
i=i+2
IF i
N
IF
huruf == ‘\n’
Y
b&a,
IF i < 100
Y END b&a,
%) 4low3hart program penampil bilangan ganjil ke3uali kelipatan %
START
N
IF i ' ==0 88 i ' 11== 0
i=1 Y $:n9inu READ n i=i+2 PRINT i IF i
Y
$:n9inu
Y
IF i ' ( == 0
N PRINT i
END
N END
N
AC6. 8) 4low3hart program untuk menerima da"tar nilai mahasiswa
) 4low3hart program membentuk matriks n n
START
i=0 min = 0 ma4 = 0 jum = 0 j5b = 7
START
START
READ n
READ n
i=1
i=1 i++
i++
READ n
IF i <= n
i++
IF
) 4low3hart program membentuk matriks bertingkat
N
N
IF i <= n
Y
Y
n <= i
j = 1
j = 1
Y
N
j+++
j+++
jum = jum + bil IF j <= n IF ma4 < bil 88 ma4 == 0
N
Y
ma4 = bil
IF min > bil 88 min == 0
N
N
IF j <= i
Y
Y PRINT j
PRINT i
END
END
Y
min = bil
START
&a9a = jum 3 i
PRINT jum/&a9a/min/ma4 jum/&a9a/min/ma4
?) 4low3hart program dengan kon"irmasi ingin keluar program atau tidak.
$%a& j5b
READ j5b
END
/ode ,rogra&
IF
jwb != ‘y’
Y
END
N
N
C. Per/ Per/o( o(aa aan n 59B. 1. Dengan menggunakan menggunakan pernyataan pernyataan break, break, buatlah program program yang dapat menampilkan menampilkan semua tampilan karakter yang diketikkan dan program berakhir ketika ditekan tombol Gnter. 59C. a. isti isting ng Pro Progr gram am 5D5. 7B. #include ! !tdio." 7>. 77. &ain() 76. { 7F. c"ar "uruf = M M; 7?. printf(+,-/$0/% 11 11 S S4 15 15n-6N7- 8 21 211913193: 8 170$B5n+); 7G. printf(+5n======================================== 5 n5 n5n+); 70. printf(+,-?- B6 B6-G6N$0 /6 /6$0/ 6N 6N$6- 70 70$6/N5n+); 7@. printf(+5n======================================== 5n+); 7/. 74. printf(+5n/etik !e !e&arang ka k arakter ke ke&udian te t ekan en e nter C 5n+); 7. 7N. do 7. { 7,. if("uruf == M5nM) 7J. reak; 7-. 7S. "uruf = getc"ar(); 7$. 7%. } P"ile(1); 7'. 7. 7. put!(+ put!(+,ro ,rogra gra& & di"ent di"entika ikan n karena karena anda anda &ene &enekan kan 6nte 6nter+) r+); ; 7*. }
5DB. b. 9apture Program 5DC. 5G5.
5G!. 3. 5nal 5nalis isis is Prog Progra ram m 5G9. 5GD. Program ini menggunakan do whil untuk melaku melakukan kan pengula pengulanga ngan n whilee untuk pemba3aan karakter per karakter. Pengulangan akan terus menerus men erus dilakukan karena kondis kondisii dibuat dibuat selalu selalu benar benar &;rue &;rue)) hingga hingga user user menget mengetikk ikkan an WGnter WGnterXX yang dalam dalam bahasa 9 disimbolkan dengan karakter QVnR. 5GG. 2. Denga Dengan n mengg menggun unaka akan n perny pernyat ataan aan 3ont 3ontin inue ue,, buat buatla lah h progr program am yang yang dapa dapatt menampilkan bilangan ganjil dari 1 sampai > n &n diinputkan), ke3uali bilangan ganjil tersebut kelipatan %. 5G4 5G4. 9ont 9ontoh oh 7npu 7nputt : 1 5G6. 5G6. Iut Iutput put : 1 ? 5G0. a. ist istin ing g Prog Progrram 60. 6@. 6/. 64. 6. 6N.
#include !tdio." &ain() { int in;
6. 170$B5n+); 6,. 6J. 6-. 6S. 6$. 6%. 6'. 6. 6*. 6Y. 6<. F. FB. F>. F7. F6. FF. F?. FG.
printf(+,-/$0/%
11 11
S S4
25 25n-6N7-
8
21 211913193:
8
printf(+5n======================================== 5n5n+); printf(+B04N?N ?N@04 /6>%40 /640,$N 3 5n+); printf(+5n======================================== 5n+); printf(+5na!ukkan Au&la" ilangan ganAil C +); !canf(+Dd+En); printf(+5nGa!il pengulangan C +); for(i=1;in;iI=2) { if(i D 3 == 9) { continue; } printf(+Dd +i); } printf(+5n+);
}
547. b. 9apture Program 54(. 54#.
54. 3. 5nal 5nalis isis is Prog Progra ram m 54M. 54H. Untuk men skip bilangan skip bilangan kelipatan % pada pengulangan, maka hal yang perlu kita lakukan tentunya pertama adalah menge3ek bilangan tersebut apakah kelipatan % atau bukan, 3aranya yaitu dengan menggunakan operator modulus sisa bagi. (ika sisa bagi bilangan tersebut dengan % adalah nol, maka bisa dipastikan bilangan tersebut adalah bilangan kelipatan %. Dan untuk menskip menskip nya digunakan perintah conti continu nuee yang akan melanjutkan pengulangan langsung ke pengulangan selanjutnya. 54I. 54P. . Dengan menggunakan pernyataan break dan 3ontinue, buatlah program untuk membuat program dengan input n, dan output, bilangan ganjil ke3uali kelipatan ? dan 11 mulai dari 1 sampai > n atau bilangan tersebut >1 54J. 4J. 9ont 9ontoh oh AFR. 7nput : 2 54. 54. Iutp Iutput ut : 1 % 1% 1 1? 1 54;. a. isting Program F%. #include !tdio." F'. F. &ain() F*. { FY. int in; F<. ?. printf(+,-/$0/% 11 S4 35n-6N7- 8 211913193: 8 170$B5n+); ?B. printf(+5n======================================== 5n5n+); ?>. printf(+B04N?N ?N@04 199 /6>%40 /64. U E 11 5n+);
?7. 5n+); ?6. ?F. ??. ?G. ?0. ?@. ?/. ?4. ?. ?N. ?. ?,. ?J. ?-. ?S. ?$. ?%.
printf(+5n========================================
printf(+5na!ukkan ata! ilangan = +); !canf(+Dd+En); printf(+5nGa!il pengulangan 5t= +); for(i=1;in;iI=2) { if(i 199) reak; if(i D U == 9 88 i D 11 == 9) continue; printf(+Dd +i); } printf(+5n+); }
(. 9apture Program 56<. A75.
A76. /. 5nalisis Program A7. 56C. 56C. Untu Untuk k mengh menghil ilan angk gkan an bila bilang ngan an ganj ganjil il yang yang keli kelipa pata tan n ? dan dan 11, 11, maka maka di setiap setiap pengula pengulanga ngan n perlu perlu kita kita beri beri perlak perlakuan uan khusus khusus dengan dengan de3isio de3ision n if, dimana apabila apabila bilangan bilangan tersebut habis dibagi dengan bilangan bilangan ? atau 11 maka pengulangan pengulangan akan di skip skip menggunakan menggunakan pernyataan pernyataan contin continue. ue. Pengulangan akan berhenti sesuai bilangan yang dimasukkan oleh user, tapi tidak bisa lebih dari 1 karena telah dibatasi pernyataan break ' 505. 8. !uatlah !uatlah program program untuk untuk menerim menerimaa da"tar da"tar nilai nilai mahasis mahasiswa wa sbb : 50!. 7nput : (umlah (umlah data &n) 509. Hilai ke1 sd Hilai ken 50D. Iutput : Hilai minimal minimal 50G. 50G. Hilai Hilai maksim maksimal al 504. 504. Hilai Hilai ratarata ratarata &ratarata &ratarata F nilai nilai total jumlah jumlah data) 506. &Petunjuk : 6unakan loop loop "or dan seleksi seleksi kondisi dengan i") 500. a. isti isting ng Pro Progr gram am 507. G@. #include ! !tdio." G/. G4. &ain() G. { GN. int in; G. float nilai Au& = 9 &aT = 9 &in = 9 rata; G,. GJ. printf(+,-/$0/% 11 S4 O5n-6N7- 8 211913193: 8 170$B5n+); G-. printf(+5n======================================== 5 n5 n5n+); GS. printf(+,-?- ,6N@%4G G0N?? B04N?N /6Kn 5n+); G$. printf(+5n======================================== 5n+); G%. G'. printf(+5na!ukkan Au&la" data 5t = +);
G. G*. GY. G<. 0. 0B. 0>. 07. 06. 0F. 0?. 0G. 00. 0@. 0/. 04. 0. 0N. 0. 0,. 0J. 0-. 0S. 0$. 0%. 0'. 0. 0*. 0Y. 0<.
!canf(+Dd+ En); for(i=1;i=n;iII) { fflu!"(!tdin); printf(+5na!ukkan nilai ke Dd 5t = +i); !canf(+Df+ Enilai); Au& = Au& I nilai; if(i == 1) { &aT = nilai; &in = nilai; } el!e { if(&aT nilai) &aT = nilai; if(&in nilai) &in = nilai; } } printf(+5nNilai &ak!i&al 5t5t = D9.2f+&aT); printf(+5nNilai &ini&al 5t5t = D9.2f+&in); printf(+5nNilai rataKrata 5t = D9.2f+Au& n); }
5(5. b. 9apture Program 5(!. 9 5(9.
5(D. 3. 5nal 5nalis isis is Prog Progra ram m 5(G. 5(4 5(4. Untu Untuk k meng mengum umpu pulk lkan an data data nil nilai ai,, prog progra ram m akan akan mel melak akuk ukan an peng pengul ulan anga gan n sesuai jumlah data yang diinputkan sebelumnya. Di tiap pengulangan, kita akan dimintai inputan nilai yang kemudian akan diolah untuk mendapatkan nilai ma, min dan ratarata. Untuk memperoleh nilai maksimal kita bandingbandingkan nilai yang dimasukkan setiap pengulangan. (ika nilai yang dimasukkan lebih besar dari nilai maksimal sebelumnya maka nilai maksimal adalah nilai tersebut. 5pabila nilai yang dimasukkan lebih ke3il daripada nilai minimal sebelumnya yang ada, maka nilai minimal adalah nilai tersebut. edangkan nilai ratarata didapat dari jumlah semua bilangan yang kemudian dibagi dengan jumlah pengulangan. 5(6.
A-+.
. Dengan menggunakan menggunakan pernyata pernyataan an nested nested loop, loop, buatlah buatlah program program berikut: berikut: 5(7. 7nput :n 5((. Iutput :
A-K. a. isting Program 5(. @. #include !tdio." @N. @. &ain() @,. { @J. int iAn; @-. @S. printf(+,-/$0/% 11 S4 O5n-6N7- 8 211913193: 8 170$B5n+); @$. printf(+5n======================================== 5n5n+); @%. printf(+6B%$ $-0/ n T n 5n+); @'. printf(+5n======================================== 5n+); @. @*. printf(+5na!ukkan Au&la" data 5t = +); @Y. !canf(+Dd+ En); @<. /. printf(+5n5nGa!il pengulangan 5t = 5n+); /B. />. for(i=1;i=n;iII) /7. { /6. for(A=1;A=n;AII) /F. { /?. printf(+Dd +A); /G. } /0. printf(+5n+); /@. } //. }
(. 9apture Program AKL. AKM.
AK". /. 5nalisis Program 5#I. 5#P 5#P. Untu Untuk k memben membentu tuk k matri matriks ks sepe sepert rtii ini, ini, diper diperlu lukan kanla lah h loop loop bersa bersara rang ng atau atau nest nested ed loop loop atau atau bisa bisa juga juga dise disebu butt loop loop di dala dalam m loop. loop. oopi ooping ng perta pertama ma akan akan membuat baris pada matriks sedangkan looping kedua yaitu looping yang berada di dalam loop pertama akan menyatakan men yatakan kolom dari matriks tersebut.
AK$. . Dengan menggunakan menggunakan pernyata pernyataan an nested nested loop, loop, buatlah buatlah program program berikut: berikut: 5#/. 7n 7nput :n 5#. Iutp utput :
5#;. a. isti isting ng Pro Progr gram am 5#U. /'. #include !tdio." /. /*. &ain() /Y. { /<. int iAn; 4. 4B. printf(+,-/$0/% 11 S4 :5n-6N7- 8 211913193: 8 170$B5n+); 4>. printf(+5n======================================== 5n5n+); 47. printf(+6B%$ $-0/ B6-$BG 5n+); 46. printf(+5n======================================== 5n+); 4F. 4?. printf(+5na!ukkan Au&la" data 5t = +); 4G. !canf(+Dd+ En); 40. printf(+5nGa!il pengulangan 5t = 5n5n+); 4@. for(i=1;i=n;iII) 4/. { 44. for(A=1;A=i;AII) 4. { 4N. printf(+Dd +i); 4. } 4,. printf(+5n+); 4J. } 4-. } 4S.
b. 9apture Program 5;. 5U.
5<. 3. 5nal 5nalis isis is Prog Progra ram m 5=. 5A. 5A. ama ama haln halny ya soa soall no no , , dis disin inii kit kitaa men mengg ggun unak akan annested nested loop dimana loop pertama menyatakan baris sedangkan loop kedua menyatakan kolom, perbedaann ya pada program ini adalah penampilan baris dibatasi yaitu tidak lebih dari no baris. 5B.
?. Pada akhir akhir setiap setiap 8 buah program program diatas diatas tambahka tambahkan n tanyaan tanyaan Kapakah anda anda ingin ingin keluar &yt)L, pertanyaan tersebut hanya bisa di jawab dengan huru" QyR &y ke3il) dan QtR&t ke3il). Dan akan keluar dari program p rogram setelah dijawab dengan QyR &y ke3il) a. ist istin ing g Prog Progra ram m 4<. #include ! !tdio." . B. &ain() >. { 7. c"ar AP; 6. int in; F. printf(+,-/$0/% 11 11 S S4 Ua Ua5n-6N7- 8 21 211913193: 8 170$B5n+); ?. printf(+5n======================================== 5 n5 n5n+); G. printf(+B04N?N ?N@04 199 /6>%40 /64. U E 11 5n+); 0. printf(+5n======================================== 5n+); @. /. do 4. { . %N$%/ S>-0,$ ,-?- 70$S B0S 70$-%G 70S0N0 >N$G C N. printf(+5na!ukkan ata! ilangan = +); . !canf(+Dd+En); ,. printf(+5nGa!il pengulangan 5t= +); J. for(i=1;in;iI=2) -. { S. if(i 199) $. reak; %. '. if(i D U == 9 88 i D 11 == 9) . continue; *. Y. printf(+Dd +i); <. } N. G0N?? 70S0N0 NB. N>. printf(+5n5n+); N7. printf(+paka" anda ingin keluar QytR+); N6. fflu!"(!tdin); NF. AP = getc"ar(); N?. } P"ile(AP L= MyM); NG. }
5H7. b. 9apture Program 5H(. 5H#.
5H. 3. 5nal 5nalis isis is Prog Progra ram m 5HM. 5HM. Pada Pada prog progra ram m ini ini dita ditamb mbah ahka kan n pen pengu gula lang ngan an do while agar while agar program yang dijalankan dapat diulangulang hingga user menginginkan sendiri untuk keluar yaitu dengan memasukkan karakter WyX ketika ada pertanyaan. Pemilihan pengulangan do while adalah while adalah karena setidaknya program akan dijalankan minimal satu kali. 5HH.
D. Tu Tugas gas Ta'(ahan a'(ahan 5HI. 5HP 5HP. Deng Dengan an meng menggu gunak nakan an per perny nyat ataa aan n nest nested ed loop loop,, buat buatla lah h prog progra ram m beri berikut kut:: 5HJ . 7nput : n 5H/. 5H/. Iutpu utputt : 2 % ? 11N. !ila !ilang ngan an pri prima ke n 5H. 1. ist istin ing g Prog Progra ram m 5H;. N%. N%. #inc #inclu lude de !td !tdio io." ." N'. N. &ain() N*. { NY. int i = 1 il = 2 pe&agi n i!,ri&a; N<. . printf(+,-/$0/% 11 S4 $BGN5n-6N7- 8 211913193: 8 170$B5n+); B. printf(+5n======================================== 5n5n+); >. printf(+,-?- 76-6$ B04N?N B-0 5n+); 7. printf(+5n======================================== 5n+); 6. F. printf(+5na!ukkan anyaknya ilangan 5t = +); ?. !canf(+Dd+ En); G. 0. printf(+5n7aftar ilangan pri&a 5t5t = +); @. P"ile(i = n) /. { 4. i!,ri&a = 1; . for(pe&agi=2;pe&agiil;pe&agiII) N. { . if(il D pe&agi == 9) ,. { J. i!,ri&a = 9; -. reak; S. } $. } %. '. if(i!,ri&a) . { *. printf(+Dd +il); Y. iII; <. } ,. ,B. ilII; ,>. } ,7. }
5PG. 2. 9apt 9aptur uree Prog Progra ram m 5P4. 5P6.
5P0. %. 5nal 5nalis isis is Prog Progra ram m 5P7. 5P(. 5P(. Untu Untuk k membua membuatt dere derett bila bilang ngan an prim primaa dibut dibutuh uhkan kan nest nested ed loop. loop. oop oop pert pertam amaa adalah loop untuk menampilkan deret bilangan sedangkan loop kedua adalah loop untuk menge3ek bilangan tersebut, apakah bisa habis dibagi bilangan lain selain bilangan itu dan bilangan satu atau tidak. (ika tidak ada satupun bilangan selain bilangan 1 di bawah bilangan tersebut yang bisa membagi, maka bisa langsung ditampilkan di deret karena bilangan tersebut adalah bilangan prima. 5P#. 5P.
APM. E. Ke Kesi' si'pu pula lan n AP". 1. Di dalam pengula pengulangan ngan atau looping looping terdapa terdapatt beberap beberapaa pernya pernyataa taan n yang menyebab menyebabkan kan jalannya looping tersebut berubah yaitu pernyataan break dan continue. dan continue. 2. Pernyat nyataaan break ber"ungsi break ber"ungsi untuk keluar dari loop for, do-while do-w hile dan while. while. %. Pernyataan cont contiinue nue diguna digunakan kan untuk untuk mengarah mengarahkan kan eksekus eksekusii ke iteras iterasii &proses) &proses) berikutnya pada loop yang sama. 8. Pernyat nyataaan goto merupakan merupakan intruksi intruksi untuk mengarahkan mengarahkan eksekusi eksekusi ke pernyataan pernyataan yang diawali dengan suatu label. abel sendiri berupa suatu pengenal &identi"ier) yang diikuti dengan tanda titik dua &:) . Pernyat nyataaan exit digunakan untuk menghentikan mengh entikan program tanpa harus menyelesaikan men yelesaikan sampai akhir pernyataan, yaitu melalui pemanggilan pemanggilan "ungsi eit&). . Dalam Dalam suatu suatu loop bisa terkandu terkandung ng loop yang lain, lain, sehingga sehingga jika jika loop tersebut tersebut diulangi n kali dan loop yang didalamnya dijuga dilakukan m kali maka pernyataan yang berada didalam nested loop sebanyak n n. oop yang terletak di dalam loop biasa disebut dengan loop di dalam loop &nested loop). AP?@