Tugas Uji Kompetensi KEGIATAN BELAJAR 3 PERULANGAN DENGAN KONDISI AKHIR DIINPUTKAN USER

Bab 3 Algoritma Perulangan 181 1 READ n 2 READ a 3 jumlah=a 4 i=1 5 WHILE a =n DO 6 a=a+2i 7 jumlah=jumlah + a 8 i=i+1 9 WRITE jumlah 10 END 2. Output dari algoritma di atas jika dimasukkan nilai n dan a adalah 20 dan 3 adalah .... a. a. 32 b. 45 c. 55 d. 60 e. 65 3. Jika baris 8 dihilangkan, dengan outpout yang sama dengan nomor 3 yaitu nilai n adan a adalah 20 dan 3, yang terjadi adalah .... a. Hasilnya tetap sama b. Perulangan tanpa henti c. Iterasi tidak berjalan d. Outputnya 120 e. Outputnya 99 Perhatikan algoritma berikut untuk no 4 dan 5. Algoritma ganjilGenap Variabel n:integer Pilihan:karakter 1 REPEAT 2 READ n 3 IF n MOD 2==0 THEN 4 WRITE “Genap” 5 ELSE 6 WRITE “Ganjil” 7 WRITE “Ingin menghitung lagi? yn” 8 READ pilihan 9 UNTIL pilihan==”n” 10 END 4. Pernyataan yang benar mengenai algoritma di atas adalah .... a. Input pengentian perulangan di dalam perulangan itu sendiri b. Pengguna dapat menentukan bilangan ganjil genap sebanyak yang dia mau 182 Pemrograman Dasar SMK Kelas X Sem 1 c. Pengguna dapat behenti jika dia tidak mengetikkan karakter „y‟ d. Algoritma di atas dapat diubah dalam struktur WHILE DO e. Iteratornya adalah variabel pilihan 5. Untuk mengantisipasi bahwa pilihan =”N” atau “n” dianggap sama, yaitu pengguna ingin menghentikan perulangan adalah dengan merubah kondisi sebagai berikut. a. pilihan”y” b. pilihan ”y” OR pilihan”Y” c. pilihan==”N” d. pilihan ”n” OR pilihan”N” e. p ilihan ”n” AND pilihan”N” B. Essay Buatlah algoritma untuk menghitung luas persegi panjang secara berulang-ulang dengan struktur WHILE DO Bab 3 Algoritma Perulangan 183

3.4. KEGIATAN BELAJAR 4 PERULANGAN MENGGUNAKAN PENCACAH NAIK

Sebagaimana penjelasan pada Kegiatan Belajar Pertama Bab 2 ini, pemberhentian dalam suatu perulangan dapat dilakukan dengan menggunakan pencacah. Artinya dari awal sudah ditentukan bahwa perulangan akan dilakukan berapa kali. Pencacah ini dibagi menjadi dua yaitu pencacah naik dan pencacah turun. Pada kegiatan belajar kali ini kita akan belajar menggunakan pencacah naik dalam perulangan.

3.4.1. Tujuan Pembelajaran

Dengan kegiatan belajar ini siswa diharapkan memahami algoritma perulangan dengan pencacah naik dan amenerapkannya untuk menyelesaikan masalah nyata.

3.4.2. Aktivitas Kegiatan Belajar

3.4.2.1. Mengamati

Perhatikan dua algoritma berikut. Algoritma TulisUlang1 Variabel i:integer 1 i=1 2 WHILE i=10 DO 3 WRITE “Hello” 4 i=i+1 5 END Algorima TulisUlang2 Variabel i:integer 1 FOR i=1 TO 10 DO 2 WRITE “Hello” 3 END

3.4.2.2. Menanya

Dari dua algoritma di atas susunlah pertanyaan yang semisal pernyataan berikut: 1 Apa tujuan dari kedua algoritma? 2 Kapan Algoritma TulisUlang1 dan TulisUlang2 berhenti? 3 Manakah yang lebih praktis di antara kedua algoritma di atas? 4 Manakah perulangan yang menggunakan pencacah? 5 Apakah yang dimaksud perulangan dengan pencacah?

3.4.2.3. Mengumpulkan Informasi Mencoba

Kedua algoritma di atas mempunyai keluaran yang sama yaitu mencetak tulisan “Hello” sebanyak 10 kali. Pada algoritma TulisUlang1, perulangan menggunakan kondisi di awal, yaitu dengan menggunakan struktur WHILE DO, sedangkan pada algoritma TulisUlang2, digunakan struktur FOR i= 1 TO 10. Maksudnya adalah untuk nilai i =1 sampai 10 kerjakan: WRITE “Hello”. Artinya secara otomatis nilai i akan bertambah satu setiap perulangan. Dan dalam tiap perulangan akan dituliskan kata “Hello”. Kapan berhenti? Sesuai dengan perintahnya bahwa ini dilakukan sampai i=10. Nilai i=10 inilah yang menggantikan sentinel i=10 pada struktur WHILE DO. Variabel i,s ebagai iterator disebut variabel pencacah karena nilai i dihitung dari 1 sampai 10 maka disebut pencacah naik. Dari namannya, variabel pencacah, tentu sebuah vvariabel pencacah maka tipe 184 Pemrograman Dasar SMK Kelas X Sem 1 data yang bisa dikenakan adalah tipe data ordinal dapat dihitung, yaitu tipe data integer dan karakter. Jika ada pertanyaan manakah yang lebih praktis menggunakan struktur perulangan dengan kondisi di depanakhir atau menggunakan pencacah, semua tergantung pada masalah yang dihadapi. Ada permasalahan yang lebih praktis menggunakan pencacah, namun ada juga lebih baik menggunakan struktur perulangan dengan kondisi di awalakhir. Secara umum, bentuk struktur perulangan dengan pencacah naik dituliskan FOR i= nilaiAwal TO nilaiAkhir DO Pernyataan 1 Pernyataan 2 Dst Variabel i dapat diganti dengan variabel lain. Sebagaimna dalam struktur WHILE DO maupun REPEAT UNTIL, nilai awal dan nilai akhir dalam struktur FOR TO DO dapat ditentukan oleh algoritma maupun ditentukan oleh pengguna. Penyajian dengan Flowchart Ada beberapa bentuk penyajian struktur FOR TO DO. Karena pada dasarnya bentuk FOR TO DO adalah bentuk lain dari struktur WHILE DO maka ada yang menuliskannya sama persisi dengan flowchart pada struktur WHILE DO. Namun demikian ada juga yang mempresentasikan struktur FOR TO DO dalam bentuk berikut. FOR i=nilaiAwal TO nilaiAkhir Pernyataan 1 Pernyataan 2 dst Contoh 1 Perhatikan algoritma berikut. Algoritma JumlahBilangan Variabel i, jumlah:integer 1 jumlah=0