ALGORITMA PEMROGRAMAN 1A**
(PP-011302:S1-KA) Pertemuan 5 AHMAD HIDAYAT
TEKNIK PENGULANGAN/LOOPING/ITERASI/PEMUTARAN KEMBALI Counter (Go To) FLAG For Next
Counter Digunakan untuk mengontrol pengulangan proses. (Used to control the repetition of the process.)
Pengontrolan ini dilakukan dengan memeriksa isi variabel yang digunakan sebagai kounter. Sehingga jumlah pengulangan dapat diketahui.
Contoh: Terdapat beberapa proses yang harus dilakukan dengan urutan seperti gambar disamping:
Proses A Proses B Proses C Proses D Proses B Proses C Proses D Proses B Proses C Proses D Proses E
COUNTER Dari contoh sebelumnya terlihat bahwa proses B, C, dan D diulang sebanyak tiga kali. Pengulangan ini terjadi setelah proses A dan sebelum proses E dikerjakan. Jika diimplementasikan ke bentuk flowchart, maka terbentuk rangkaian simbol yang tersusun berderet seperti gambar disamping. Hal ini tidak efisien. Agar flowchart menjadi lebih efisien maka digunakan kounter sebagai pengontrol jumlah pengulangan ketiga proses tersebut.
COUNTER Dari flowchart di samping dapat ditelusuri sebagai berikut : 1. Pertama kali dikerjakan adalah proses A.
2. Persiapkan variabel yang digunakan sebagai kounter yaitu K= 0. Variabel ini digunakan untuk mengontrol jumlah pelaksanaan proses B, C dan D yang telah dikerjakan. 3. Kerjakan proses B, C, D secara berurutan. 4. Variabel kounter ditambah 1. Isi variabel ini menunjukkan jumlah pelaksanaan untuk proses B, C dan D. 5. Periksa isi variabel kounter yaitu K untuk membatasi jumlah perulangan. Jika isi variabel K =3, maka kerjakan proses E. Sebaliknya jika K lebih kecil dari 3 berarti proses B, C, D masih perlu diulang.
COUNTER Contoh : Berapakah hasil Output B dari Flowchart Counter disamping?
B = 1,4,9,16,25
COUNTER
Latihan Counter Berapakah hasil Total pada Flowchart disamping?
FLAG/PANJI Untuk menghentikan pengulangan, kita dapat memasukkan satu data diluar data sebenarnya. Dalam mengambil data (harga) sebagai flag harus dipastikan bahwa data tersebut bukan data sebenarnya. Kadang-kadang orang mengambil data flag 999 untuk data dan “xxx” atau “EOF” untuk data string. Banyaknya flag harus sebanyak data yang di baca untuk setiap kali membaca data. Fungsi dari flag adalah : a) Untuk menghindari out of data. b) Flag biasanya digunakan berupa data string atau character dan bisa berupa data numeric atau angka-angka. Contoh : String = “XXX”, “ZZZ” Numeric = “999”, “000 c) Variabel dari flag harus benar-benar data yang tidak dipakai didalam pelaksanaan proses. d) Banyaknya flag yang digunakan dan jenisnya harus disesuaikan dengan variabel yang dibaca. Contoh : READ A, B Maka Flagnya yang digunakan ada 2 flag.
FLAG
Tentukan nilai R dari Flowchart dibawah ini:
FLAG
FOR NEXT Cara lain untuk melakukan pemutaran kembali adalah menggunakan bentuk FOR – NEXT. Biasanya statement FOR – NEXT digunakan jika kita sudah mengetahui dengan pasti berapa kali pengulangan akan dilakukan.
FOR NEXT Jika kita menggunakan instruksi FOR NEXT, dapat digunakan dua cara penggambaran; yaitu :dua buah kotak proses atau kotak predefine dan konektor.
Dalam instruksi FOR NEXT ini, pemutaran kembali tidak perlu adanya pembatasan dengan menggunakan decision (kondisi), konter ataupun flag. Hal tersebut karena dalam instruksi FOR NEXT ada sebuah variabel kontrol yang berfungsi untuk mengontrol batas perputaran.
FOR NEXT Misalnya i dalam FOR i = 1 to 5, maka i akan berputar sebanyak 5 kali, dari i = 1 s/d I = 5.
FOR NEXT CONTOH 2:
FOR NEXT Dalam pemakaian FOR NEXT, jika tidak dilengkapi dengan STEP maka langkah yang dilaksanakan adalah loncat 1, tetapi STEP dapat dipergunakan untuk menentukan langkah sesuai dengan kebutuhan. C/: FOR I = 1 TO 10 STEP 2 FOR N = 20 to 1 STEP –3
nilai I = 1, 3, 5, 7, 9 nilai N = 20, 17, 14, 11, 8, 5, 2
STEP dapat bernilai positif dan dapat juga bernilai negatif.
STEP POSITIF (naik) perulangan mulai dari hitungan kecil ke hitungan besar (increment) STEP NEGATIF (Turun) perulangan mulai dari hitungan besar ke hitungan kecil.
Latihan