Struktur Kontrol Pemilihan (Selection) 2. Pengulangan (Repetition) 1.
PERULANGAN/ LOOPING/ REPETITION While Do-While For Nested For
Perulangan
Pernyataan While, Do while, For, dan Nested For dapat digunakan untuk mengeksekusi suatu pernyataan berulang kali
Struktur kontrol Repetition (Perulangan) = digunakan untuk mengulang sekumpulan perintah sesuai dengan kondisi (diwakili oleh loop control variabel) yang diberikan Keterangan : Loop mengulang langkah-langkah dalam sebuah program Body Of Loop Perintah-perintah yang diulang dalam loop Loop Control Variable Variabel yang nilainya digunakan untuk mengontrol perulangan
Dua macam Loop Control Variabel 1. Counter digunakan jika jumlah perulangan menjadi syarat perulangan. Contoh : mencari suku ke-n dari deret : 1+3+5+.. 2. Event jika kejadian tertentu menjadi syarat dihentikannya perulangan Contoh : menampilkan suku-suku deret : 1+3+5+.. sampai yang ditampilkan >20
Syarat Loop Control Variabel 1. Diinisialisasi dilakukan diluar Loop, dalam arti sebelum masuk Loop 2. Selalu di Test setiap kali body loop dijalankan, nilai loop control variabel dicek apakah memenuhi syarat perulangan. Jika ya, maka di ulang, jika tidak berhenti 3. Di Update nilai dari loop control variabel harus diupdate agar proses perulangan dapat berhenti. Letaknya di dalam Body Of Loop
Pengulangan: While
Syntax : 1) while(kondisi) pernyataan;
2) while(kondisi) { pernyataan1; pernyataan2; … } 3) while(1) perulangan tanpa kondisi. Untuk keluar dicek dengan if dan pakai “break” { pernyataan1; … }
Pengulangan: While Bagian pernyataan yang mengikuti while akan dieksekusi selama ungkapan pada while bernilai benar tidak sama dengan NOL. Pengujian terhadap ungkapan while dilakukan sebelum bagian pernyataan. Bagian pernyataan pada while tidak dijalankan sama sekali, pabila kondisi yang pertama bernilai salah Setiap pengulangan dikerjakan maka kondisinya akan di cek. Jika masih benar, proses loop dilakukan lagi dan jika salah maka proses loop berhenti.
awal WHILE
kondisi F akhir WHILE
T
pernyataan
LOOP – WHILE (1) Contoh Soal 19: Buat Flowchart, Pseudocode, Algoritma, dan Program menampilkan nilai Z dari 2 dan pengulangan akan dihentikan setelah variabel Z mencapai nilai 12
Pseudocode: ANGKA_2_12 {Menampilkan nilai dua sampai dengam dua belas}
KAMUS/DEKLARASI VARIABEL z : int
ALGORITMA/DESKRIPSI z=2 while (z <= 12) print(z) z++ endwhile
Algoritma: 1. z 2 2. Selama (z < = 12) kerjakan baris 3 sampai dengan 4, kalau tidak kerjakan baris 5 3. Menampilkan/mencetak z. 4. z z+1 5. Selesai
Start
z=2 Y z<=12 N End
z
z=z+1
LOOP – WHILE (2) Contoh Soal 20: Buat Flowchart, Pseudocode, Algoritma, dan Program menampilkan Tulisan “Selamat Datang” dan “----di C++----” sebanyak 5 kali
Start
z=1
z<=5 N Y “Selamat Datang” “----di C++----”
z=z+1 End
Contoh : 20 Pseudocode....???? Algoritma .... ????
LOOP – WHILE (3) Contoh Soal 21: Buat Flowchart, Pseudocode, Algoritma, dan Program menampilkan nilai Z dari 2 dan pengulangan dilakukan sampai Z mencapai nilai 12 tetapi akan dihentikan setelah mencetak/ menampilkan Z=5
Contoh : 21 Flowchart....????? Pseudocode....???? Algoritma .... ????
LOOP WHILE – Buat Buat Buat Buat
1. 2. 3. 4.
Flowchart, Pseudocode, Algoritma Program
Catatan :
Soal Ada di Asisten Dosen Diskusikan dengan teman dahulu lalu dievaluasi dengan asisten dosen, Jawaban serahkan kepada asisten dosen
Pengulangan do while
Syntax : do { pernyataan1; … }while(kondisi)
LOOP – WHILE (1) Contoh Soal 22: Buat Flowchart, Pseudocode, Algoritma, dan Program menampilkan nilai Z dari 2 dan pengulangan akan dihentikan setelah variabel Z mencapai nilai 12
Pseudocode: ANGKA_2_12 {Menampilkan nilai dua sampai dengam dua belas}
KAMUS/DEKLARASI VARIABEL z : int
ALGORITMA/DESKRIPSI z=2 do print(z) z++ while (z <= 12)
While Algoritma: 1. z 2 2. Selama (z < = 12) kerjakan baris 3 sampai dengan 4, kalau tidak kerjakan baris 5 3. Menampilkan/mencetak z. 4. z z+1 5. Selesai
Do..While Algoritma: z2 Menampilkan/mencetak z z z+1 Selama (z ≤ 12) kerjakan baris 2 sampai dengan 3 5. Selesai 1. 2. 3. 4.
Start
z=2 z
z=z+1
Y z<=12 N End
LOOP DO .... WHILE Buat Buat Buat Buat
1. 2. 3. 4.
Flowchart, Pseudocode, Algoritma Program
Catatan :
Soal Ada di Asisten Dosen Diskusikan dengan teman dahulu lalu dievaluasi dengan asisten dosen, Jawaban serahkan kepada asisten dosen
Soal Do...While Praktikum 1.
2. 3. 4. 5. 6. 7.
8.
9.
Tampilkan tulisan “Universitas Pancasila Fakultas Teknik Jurusan Teknik Informatika” sebanyak 25 kali Tampilkan angka 1 sampai dengan 20 secara berurutan (ascending) Tampilkan angka 20 sampai dengan 1 secara berurutan (Descending) Tampilkan angka 0 sampai dengan 100 dengan step 5 (mis: 0,5,10,15,… 100) Tampilkan angka 100 sampai dengan 0 dengan step 5 (mis: 100,95,90,85,… 0) Buatlah program untuk mencetak deret 10 9 8 7 6 5 4 3 2 1 Pada akhir semester setelah nilai ujian semua mata kuliah tersedia maka prestasi akademik mahasiswa dapat dihitung dalam bentuk IPS (Indeks Prestasi Semester). Tampilkan IPS tertinggi dan jumlah mahasiswa yang mendapat IPS tertinggi tersebut. Masukan terdiri dari sejumlah IPS. Misalkan data yang diolah adalah 28 56 78 43 78 30 maka keluarannya adalah 78 2 orang. Menampilkan jumlah bilangan yang akan diinput, setelah itu menginput bilangan, lalu bandingkan bilangan yang input, tampilkan nilai tertinggi/terbesarnya Buat program untuk menampilkan output sbb : I II III IIII IIIII
Soal While Praktikum 1.
2. 3. 4. 5. 6. 7.
8.
9.
Tampilkan tulisan “Universitas Pancasila Fakultas Teknik Jurusan Teknik Informatika” sebanyak 25 kali Tampilkan angka 1 sampai dengan 20 secara berurutan (ascending) Tampilkan angka 20 sampai dengan 1 secara berurutan (Descending) Tampilkan angka 0 sampai dengan 100 dengan step 5 (mis: 0,5,10,15,… 100) Tampilkan angka 100 sampai dengan 0 dengan step 5 (mis: 100,95,90,85,… 0) Buatlah program untuk mencetak deret 10 9 8 7 6 5 4 3 2 1 Pada akhir semester setelah nilai ujian semua mata kuliah tersedia maka prestasi akademik mahasiswa dapat dihitung dalam bentuk IPS (Indeks Prestasi Semester). Tampilkan IPS tertinggi dan jumlah mahasiswa yang mendapat IPS tertinggi tersebut. Masukan terdiri dari sejumlah IPS. Misalkan data yang diolah adalah 28 56 78 43 78 30 maka keluarannya adalah 78 2 orang. Menampilkan jumlah bilangan yang akan diinput, setelah itu menginput bilangan, lalu bandingkan bilangan yang input, tampilkan nilai tertinggi/terbesarnya Buat program untuk menampilkan output sbb : I II III IIII IIIII