java looping

14
Looping for ( ... ) 2 t3a 3 t3b 3 t3c 4 t3d 4 while ( ... ) 6 t3e 7 t3f 7 t3g 8 do ... while ( ... ) 9 t3h 10 Tugas 11 1. Faktorial 11 2. Ganjil 11 3. Penjumlahan Integer Positif 11 4. Rumus xi di 12 5. Hasil Operasi + - 12 6. Segitiga Siku-Siku 12 7. Segitiga Sama Sisi 13 8. Tiga Faktor 13 9. Deret 13 Pada modul sebelumnya, kita sudah mengetahui bahwa pada dasarnya program dapat berjalan secara linier, bercabang atau berulang. Minggu ini kita akan mempelajari mengenai perulangan (loop). Secara garis besar, perulangan dapat dilakukan dengan menggunakan : for ( ... ) while ( ... ) do ... while ( ... ) Teknik Informatika UNPAR . Praktikum AKS141 - Dasar-Dasar Pemrograman Ganjil 2009/2010 1

Upload: skyland-hacker

Post on 13-Jun-2015

2.106 views

Category:

Documents


0 download

DESCRIPTION

Pada modul sebelumnya, kita sudah mengetahui bahwa pada dasarnya program dapat berjalan secaralinier, bercabang atau berulang. Minggu ini kita akan mempelajari mengenai perulangan (loop).Secara garis besar, perulangan dapat dilakukan dengan menggunakan :• for ( ... )• while ( ... )• do ... while ( ... )

TRANSCRIPT

Page 1: Java Looping

Looping

for ( ... ) 2

t3a 3

t3b 3

t3c 4

t3d 4

while ( ... ) 6

t3e 7

t3f 7

t3g 8

do ... while ( ... ) 9

t3h 10

Tugas 11

1. Faktorial 11

2. Ganjil 11

3. Penjumlahan Integer Positif 11

4. Rumus xi di 12

5. Hasil Operasi + - 12

6. Segitiga Siku-Siku 12

7. Segitiga Sama Sisi 13

8. Tiga Faktor 13

9. Deret 13

Pada modul sebelumnya, kita sudah mengetahui bahwa pada dasarnya program dapat berjalan secara

linier, bercabang atau berulang. Minggu ini kita akan mempelajari mengenai perulangan (loop).

Secara garis besar, perulangan dapat dilakukan dengan menggunakan :

• for ( ... )

• while ( ...  )

• do ... while ( ...  )

Teknik Informatika UNPAR . Praktikum AKS141 - Dasar-Dasar Pemrograman Ganjil 2009/2010 1

Page 2: Java Looping

for ( ... )

Biasanya skema for digunakan untuk melakukan pengulangan, dimana kita sudah mengetahui dengan

pasti berapa kali pengulangan yang akan dilakukan. Misalnya :

• Mencetak nama ke layar sebanyak 5 kali.

• Menuliskan 10 buah bilangan prima pertama ke layar.

Perhatikan skema for berikut ini :

Penjelasan :

• Inisialisasi : satu atau lebih statement yang dieksekusi hanya satu kali pada awal loop dan

sesudah itu tidak pernah dieksekusi lagi. Biasanya diisi dengan inisialisasi variabel counter atau

pencacah.

• Kondisi : biasanya berisi ekspresi yang nilainya akan mentukan apakah bagian statement/block

statement akan dikerjakan atau tidak. Jika ekspresi pada kondisi menghasilkan nilai true, maka

statement/block statement akan dieksekusi (masuk ke bagian loop dan mengeksekusi semua

statement yang ada di dalamnya), sedangkan jika menghasilkan nilai false, maka statement/block

statement tidak dieksekusi (langsung melanjutkan ke statement berikutnya setelah skema for).

• Setelah semua statement pada bagian loop dieksekusi, program akan melakukan eksekusi pada

bagian perubahan (yang dirubah biasanya nilai pencacah atau counter). Kemudian akan dilakukan

lagi pengetesan terhadap kondisi.

• Looping ini akan berjalan terus sampai suatu saat kondisi bernilai false.

Agar lebih jelas, perhatikan program berikut :

Teknik Informatika UNPAR . Praktikum AKS141 - Dasar-Dasar Pemrograman Ganjil 2009/2010 2

Page 3: Java Looping

t3a

Jangan lupa menuliskan identitas program pada setiap file.

Pada saat awal, variabel i diisi dengan nilai 0, kemudian dicek apakah nilai i lebih kecil dari 10, karena

hasil pengecekan adalah true, maka karakter '#' akan diprint ke layar. Setelah itu nilai i akan ditambah

satu. Demikian seterusnya sampai saat nilai i berisi 10, maka program akan keluar dari skema loop.

Variabel i pada program yang anda buat, selain sebagai counter, atau pencacah, dapat juga digunakan

untuk keperluan lainnya. Cobalah membuat program t3b, isi program sama dengan t3a, tetapi bagian

printf ("#") diganti dengan menampilkan isi variabel i.

t3b

Kemudian lakukan sedikit percobaan :

• Dapatkah variabel i tidak dimulai dari 0, tetapi dari 1 atau 2 ? (1a)

• Bagaimana jika dimuali dari bilangan negatif ? Apakah dapat dilakukan ? (1b)

• Kemudian perhatikan sekali lagi bagian perubahan, i++ menunjukkan counter i ditambah 1 setiap kali

looping. Dapatkah counter i dapat dinaikkan tdk hanya 1 tetapi 2 atau 3 ? (1c)

• Ekspresi apa yang harus ditulis agar counter i bertambah 2 setiap kali looping. (1d)

• Tuliskan hasil tampilan di layar dari program t3b, setelah counter i ditambah 2 setiap kali looping. (1e)

Tuliskan jawaban pertanyaan-pertanyaan diatas di file t3b.

Dari program t3b, kita dapat menampilkan angka 0,1,2,3,4,5,6,7,8 secara berurutan dan membesar. Ini

karena kita menginisialisasi variabel i dengan 1, kemudian menambah 1 selama masih lebih kecil dari

10. Bagaimana agar kita dapat menampilkannya secara terurut menurun ?

Teknik Informatika UNPAR . Praktikum AKS141 - Dasar-Dasar Pemrograman Ganjil 2009/2010 3

Page 4: Java Looping

Perhatikan program berikut :

t3c

Program ini bermaksud menampilkan nilai i setiap kali looping.

Hasil yang diinginkan :

Nilai i = 1

Nilai i = 2

Nilai i = 3

Tetapi hasilnya ternyata tidak sesuai.

Apa yang ditampilkan program ke layar ? Bagaimana cara memperbaikinya ? Perbaiki program t3c di

atas.

Ada beberapa kesalahan mendasar yang sering sekali kita lakukan pada saat menggunakan skema for.

Berikut beberapa contohnya. Jawab pertanyaan-pertanyaan dibawah ini pada t3d.

t3d

✦ Perhatikan program berikut (program bermaksud menampilkan kalimat hello world sebanyak 10 kali).

Apakah program dapat menampilkan kalimat hello world sebanyak 10 kali ? (1a)

Jika tidak, berapa kali hello world ditampilkan ? (1b)

Apa kesalahan yang terdapat pada program sehingga hello world tidak ditampilkan 10 kali ? (1c)

Bagaimana cara memperbaikinya ? (1d)

✦ Perhatikan program berikut (program bermaksud menampilkan bilangan 10 sampai dengan 1 secara

terurut).

Apakah program dapat berjalan dengan benar ? (2a)

Jika tidak, apa yang ditampilkan di layar ? (2b)

Teknik Informatika UNPAR . Praktikum AKS141 - Dasar-Dasar Pemrograman Ganjil 2009/2010 4

Page 5: Java Looping

Apa kesalahan yang terdapat pada program ? (2c)

Bagaimana cara memperbaikinya ? (2d)

✦ Perhatikan program berikut (program bermaksud menampilkan pangkat dua dari semua bilangan

antara 1 sampai dengan 10).

Apakah program dapat berjalan dengan benar ? (3a)

Jika tidak, apa yang ditampilkan di layar ? (3b)

Apa kesalahan yang terdapat pada program ? (3c)

Bagaimana cara memperbaikinya ? (3d)

Berdasarkan contoh contoh di atas :

• Ingat, jangan menaruh tanda ' ; ' setelah for ( ) dan sebelum statement / block statement.

• Pastikan kita membuat kondisi yang suatu saat akan bernilai tidak benar, agar perulangan dapat

berjalan dengan benar.

• Jangan melakukan perubahan terhadap nilai variabel counter di dalam loop.

Teknik Informatika UNPAR . Praktikum AKS141 - Dasar-Dasar Pemrograman Ganjil 2009/2010 5

Page 6: Java Looping

while ( ... )

Biasanya skema while digunakan untuk melakukan pengulangan, dimana kita belum mengetahui

dengan pasti berapa kali pengulangan yang akan dilakukan. Misalnya :

• Menuliskan semua bilangan prima yang lebih kecil dari 10233.

• Menerima input bilangan integer positif dari user sampai user memasukkan angka -1.

Perhatikan skema while berikut ini :

Penjelasan :

• Kondisi : biasanya berisi ekspresi yang nilainya akan mentukan apakah bagian statement/block

statement akan dikerjakan atau tidak. Jika ekspresi pada kondisi menghasilkan nilai true, maka

statement/block statement akan dieksekusi ( masuk ke bagian loop dan mengeksekusi semua

statement yang ada di dalamnya ), sedangkan jika menghasilkan nilai false maka statement/block

statement tidak akan dieksekusi (langsung melanjutkan ke statement berikutnya setelah skema

while).

• Kemudian program kembali akan melakukan eksekusi pada bagian kondisi untuk memeriksa nilai

kondisi saat ini. Demikian seterusnya sampai suatu saat nilai kondisi adalah false.

• Perhatikan bahwa pada saat awal, akan dilakukan pemeriksan kondisi sebelum memasuki

statement/block statement.

Agar lebih jelas, perhatikan program berikut:

Teknik Informatika UNPAR . Praktikum AKS141 - Dasar-Dasar Pemrograman Ganjil 2009/2010 6

Page 7: Java Looping

t3e

Pada saat awal, variabel i diisi dengan nilai 1, kemudian dicek apakah nilai i lebih kecil dari 7, karena

hasil pengecekan true, maka "hello world" akan diprint ke layar. Setelah itu nilai i akan ditambah satu.

Kemudian program kembali akan memeriksa apakah nilai i lebih kecil dari 7 atau tidak. Demikian

seterusnya sampai saat nilai i berisi 8, maka program akan keluar dari skema loop.

Seperti telah disebutkan sebelumnya, skema while umumnya digunakan untuk pada saat tidak

diketahui dengan pasti berapa kali pengulangan yang harus dilakukan. Perhatikan contoh berikut :

t3f

Teknik Informatika UNPAR . Praktikum AKS141 - Dasar-Dasar Pemrograman Ganjil 2009/2010 7

Page 8: Java Looping

Ada beberapa kesalahan mendasar yang sering sekali kita lakukan pada saat menggunakan skema

while. Berikut beberapa contohnya. Jawab pertanyaan-pertanyaan dibawah ini pada t3g.

t3g

✦ Perhatikan program berikut (program bermaksud menampilkan angka dari 10 sampai 1).

Apakah program dapat menampilkan angka 10 sampai 1 ? (1a)

Jika tidak, berapa saja angka ditampilkan ? (1b)

Apa kesalahan yang terdapat pada program ? (1c)

Bagaimana cara memperbaikinya ? (1d)

✦ Perhatikan program berikut (program bermaksud menampilkan akar kuadrat dari 100 sampai 1).

Apakah program dapat menampilkan akar kuadrat dari 100 sampai 1 ? (2a)

Jika tidak, akar kuadrat dari berapa saja yang ditampilkan ? (2b)

Apa kesalahan yang terdapat pada program ? (2c)

Bagaimana cara memperbaikinya ? (2d)

Berdasarkan contoh-contoh di atas :

• Ingat, jangan lupa mendeklarasikan variabel counter sebelum digunakan.

• Pastikan kita membuat kondisi yang suatu saat akan bernilai tidak benar, agar perulangan dapat

berjalan dengan benar.

Teknik Informatika UNPAR . Praktikum AKS141 - Dasar-Dasar Pemrograman Ganjil 2009/2010 8

Page 9: Java Looping

do ... while ( ... )

Skema do ... while memiliki kegunaan yang hampir sama dengan skema while. Perhatikan skema do ...

while berikut ini :

Penjelasan :

• Kondisi : di sini sama dengan kondisi pada skema for dan skema while, gunanya untuk

menghentikan pengulangan bila ekspresi/kondisi menghasilkan nilai false.

• Perbadaan skema do .. while dengan skema while adalah pada skema do .. while statement/block

statement dieksekusi terlebih dahulu baru kondisi-nya diperiksa, sedangkan pada skema while,

kondisi-nya diperiksa terlebih dahulu baru statement/block statement-nya dieksekusi.

Perhatikan contoh program berikut :

Teknik Informatika UNPAR . Praktikum AKS141 - Dasar-Dasar Pemrograman Ganjil 2009/2010 9

Page 10: Java Looping

t3h

Teknik Informatika UNPAR . Praktikum AKS141 - Dasar-Dasar Pemrograman Ganjil 2009/2010 10

Page 11: Java Looping

Tugas

Nama file: t09NYYXXX.java (N: nomor soal, YY: angkatan, XXX: 3 digit terakhir NPM)

Lihat jam pengumpulan di E-Learning.

1. FaktorialBuatlah sebuah program yang digunakan untuk menghitung faktorial. Input akan berhenti jika user

memasukkan angka nol. Tulisan berwarna merah adalah input user.

Contoh :

2. GanjilBuatlah program dengan spesifikasi sebagai berikut :

• Menerima masukan berupa bilangan integer n dari user.

• Menampilkan semua bilangan ganjil yang lebih kecil dari n.

Contoh :

Jika n = 5 ditampilkan 1,3.

Jika n = 13 ditampilkan 1,3,5,7,9,11.

3. Penjumlahan Integer PositifBuatlah program dengan spesifikasi sebagai berikut :

1. Menerima masukan n buah bilangan integer positif dari user.

2. Jumlahkan semua bilangan positif yang dimasukkan oleh user.

3. Penjumlahan dan masukan dari user diakhiri jika user memasukkan bilangan negatif.

4. Tampilkan hasil penjumlahan semua bilangan yang dimasukkan user (kecuali bilangan negatif).

Masukkan angka : 3

Hasil faktorial : 6

Masukkan angka : 5

Hasil faktorial : 120

Masukkan angka : 0

-- Terima Kasih --

Teknik Informatika UNPAR . Praktikum AKS141 - Dasar-Dasar Pemrograman Ganjil 2009/2010 11

Page 12: Java Looping

4. Rumus xi diBuatlah program yang menghitung rumus dibawah ini:

Contoh:

x = 1, d = 1, n = 2

Hasil = 5

5. Hasil Operasi + -Buatlah sebuah program yang menerima sebuah bilangan bulat positif dan menghasilkan nilai dari

operasi berikut:

Input    : n

Output  : +1-2+3-4+5 ... n

Tampilkan pesan kesalahan jika input bukan bilangan positif.

Contoh input:

-3

10

5

Contoh output:

Bukan bilangan positif

-5

3

6. Segitiga Siku-SikuBuatlah program yang menampilkan segitiga siku-siku. Ukuran segitiga dimasukkan oleh user.

Contoh :

Panjang sisi : 3

*

**

***

Teknik Informatika UNPAR . Praktikum AKS141 - Dasar-Dasar Pemrograman Ganjil 2009/2010 12

Page 13: Java Looping

7. Segitiga Sama SisiBuatlah sebuah program yang menerima masukan sebuah nilai n. n harus ganjil dan lebih besar dari 1,

kemudian menampilkan gambar segitiga dengan panjang alas n.

8. Tiga FaktorProgram menerima int n dan mengeluarkan semua bilangan yang memiliki 3 buah faktor dari 1 sampai

dengan n.

Contoh input :

25

Contoh output :

4 9 25

9. DeretDiketahui sebuah deret bilangan dengan S(n) = 2*n+3.

S(0) = 2*0+3 = 3

S(1) = 2*1+3 = 5

S(2) = 2*2+3 = 7

dan seterusnya.

Jika diberikan sebuah bilangan n, hitunglah U(n).

U(0) = S(0) = 3

U(1) = S(1) + S(0) = 8

U(2) = S(2) + S(1) + S(0) = 15

dan seterusnya.

Buatlah program yang menghitung nilai U(n) seperti diatas. Program diakhiri dengan angka -1.

4

Bilangan genap

5

*

***

*****

Teknik Informatika UNPAR . Praktikum AKS141 - Dasar-Dasar Pemrograman Ganjil 2009/2010 13

Page 14: Java Looping

0

3

1

8

2

15

-1

Teknik Informatika UNPAR . Praktikum AKS141 - Dasar-Dasar Pemrograman Ganjil 2009/2010 14