PENGULANGAN DAN PEMBACAAN DATA PENGULANGAN TUNGGAL CLS FOR I = 1 TO 5 PRINT “KOMPUTER” NEXT I END OUTPUT : KOMPUTER KOMPUTER KOMPUTER KOMPUTER KOMPUTER
FOR I = 1 TO 5 berarti pengulangan yang harus dilakukan sebanyak 5 X. Variabel I digunakan sebagai indikator pengulangan. Proses pengulangan akan berhenti jika variable I = 5.
Contoh : CLS BARIS = 5 FOR KOLOM = 10 TO 15 LOCATE BARIS, KOLOM : PRINT “KOMPUTER” BARIS = BARIS + 1 NEXT KOLOM END OUTPUT : KOMPUTER KOMPUTER KOMPUTER KOMPUTER KOMPUTER
STEP 2 pd stat. FOR K = 1 TO 20 berarti variabel K bertambah 2. Proses pengulangan berakhir jika nilai variabel K > 20.
Contoh : CLS PRINT “ LANGKAH KE NILAI VARIABEL K” PRINT “ -------------------------------------------------------“ FORMAT$ = “ ## ## “ COUNTER = 1 FOR K = 1 TO 20 STEP 2
Pengulangan dan Pembacaan Data
Algoritma dan Pemrograman 1B
PRINT USING FORMAT$; COUNTER; K COUNTER = COUNTER + 1 NEXT K END OUTPUT : LANGKAH KE 1 2 3 4 5 6 7 8 9 10
NILAI VARIABEL K 1 3 5 7 9 11 13 15 17 19
Contoh : CLS PRINT “ LANGKAH KE NILAI VARIABEL K” PRINT “ -------------------------------------------------------“ FORMAT$ = “ ## ## “ COUNTER = 1 FOR K = 20 TO 1 STEP -2 PRINT USING FORMAT$; COUNTER; K COUNTER = COUNTER + 1 NEXT K END OUTPUT : LANGKAH KE NILAI VARIABEL K 1 20 2 18 3 16 4 14 5 12 6 10 7 8 8 6 9 4 10 2
STEP -2 pd stat. FOR K = 20 TO 1 menyebabkan nilai variabel K berkurang 2, Proses pengulangan akan berakhir jika variabel K < 1.
Pengulangan dan Pembacaan Data
Algoritma dan Pemrograman 1B
Contoh : CLS DATA 10 DATA “DATA PERTAMA” , “DATA KE DUA”, “DATA KE TIGA” DATA “DATA KE EMPAT” , “DATA KE LIMA”, “DATA KE ENAM” DATA “DATA KE TUJUH” , “DATA KE DELAPAN” DATA “DATA KE SEMBILAN” , “DATA KE SEPULUH” ‘ ………. BACA DATA ………. READ JUMDATA FOR I = 1 TO JUMDATA READ TEKS$ PRINT TEKS$ NEXT I PRINT “ ………. DATA SELESAI DI BACA ……….” END OUTPUT : DATA PERTAMA DATA KE DUA DATA KE TIGA DATA KE EMPAT DATA KE LIMA DATA KE ENAM DATA KE TUJUH DATA KE DELAPAN DATA KE SEMBILAN DATA KE SEPULUH ………. DATA SELESAI DI BACA ……….
Nilai JUMDATA diletakkan pada stat. DATA 10 & diakses melalui statement READ JUMDATA. Pengulangan akan berakhir bila nilai variabel I > nilai variabel JUMDATA.
Pengulangan dan Pembacaan Data
Algoritma dan Pemrograman 1B
Contoh : CLS COUNTER = 1 FOR I = 1 TO 20 IF COUNTER = 7 THEN EXIT FOR PRINT “PENGULANGAN KE “; I COUNTER = COUNTER + 1 NEXT I PRINT “ ………. PROSES PENGULANGAN SELESAI ……….” END OUTPUT : PENGULANGAN KE 1 PENGULANGAN KE 2 PENGULANGAN KE 3 PENGULANGAN KE 4 PENGULANGAN KE 5 PENGULANGAN KE 6 ………. PROSES PENGULANGAN SELESAI ……….
Pd baris IF COUNTER = 7 THEN EXIT FOR pengulangan dihentikan jika counter = 7. Statement EXIT FOR menyebabkan pengulangan dihentikan. Proses selanjutnya yang akan dikerjakan adalah statement yang terletak setelah statement NEXT.
Pengulangan dan Pembacaan Data
Algoritma dan Pemrograman 1B
PENGULANGAN JAMAK (NESTED LOOPING) FOR I = …………. Statement 1 Statement 2 FOR J = ………. Statement 3 Statement 4 NEXT J NEXT I Contoh aplikasi dengan memanfaatkan pengulangan jamak (nested looping) : CLS PRINT “ VARIABEL I VARIABEL J “ PRINT “ =============================” BARIS = 3 FOR I = 1 TO 3 LOCATE BARIS,6 : PRINT I FOR J = 1 TO 4 LOCATE BARIS, 25 : PRINT J BARIS = BARIS + 1 NEXT J LOCATE BARIS, 1 PRINT “ -------------------------------------------------“ BARIS = BARIS + 1 NEXT I END OUTPUT : VARIABEL I VARIABEL J ======================================== 1 1 2 3 4 -------------------------------------------------2 1 2 3 4 -------------------------------------------------3 1 2 3 4 -------------------------------------------------Pengulangan dan Pembacaan Data
Algoritma dan Pemrograman 1B
PERINTAH WHILE …WEND Merupakan alternatif lain utk melakukan pengulangan proses. WHILE kondisi1 Statement1 …………. …………. WEND
Blok -1
Jika kondisi BENAR, proses yang akan dikerjakan adl statement blok-1. Setelah itu, proses akan kembali melakukan pengecekan kondisi. Proses pengulangan instruksi akan berakhir jika kondisi bernilai SALAH.
Contoh : CLS HITUNG = 0 WHILE HITUNG < 5 PRINT HITUNG HITUNG = HITUNG + 1 WEND PRINT “PROSES PENGULANGAN SELESAI” PRINT “KARENA NILAI VARIABEL HITUNG = “; HITUNG END OUTPUT : 0 1 2 3 4 PROSES PENGULANGAN SELESAI KARENA NILAI VARIABEL HITUNG = 7
Jika nilai HITUNG < 7, proses akan mengerjakan kelompok statement yang terletak diantara WHILE dan WEND. Proses ke baris WHILE untuk memeriksa apakah nilai HITUNG masih < dari 7. Jika nilai HITUNG masih < 7, proses kembali mengerjakan kelompok statement yang terletak diantara WHILE dan WEND. Pengulangan dilakukan sampai nilai HITUNG > = 7. Setelah proses pengulangan berakhir, statement berikutnya yang dikerjakan adalah statement yang terletak di bawah kata WEND yaitu PRINT “PROSES PENGULANGAN SELESAI”
Pengulangan dan Pembacaan Data
Algoritma dan Pemrograman 1B
Ada alternatif bentuk penulisan WHILE ….. WEND lain, yaitu memakai bentuk WHILE ….. WEND bertingkat . Perhatikan bagan di bawah ini:
WHILE kondisi1 Statement1 …………. WHILE kondisi2 Statement4 ………….. ………….. WEND Statement7 …………. WEND
blok-2
blok-1
Di dalam statement WHILE ….. WEND pertama tdp stat WHILE ….. WEND lain. Jika kondisi 1 bernilai BENAR, maka proses berikut yang akan dikerjakan adalah kelompok statement yang terletak di dalam blok-1.
Contoh : CLS PRINT “ VARIABEL A VARIABEL B “ PRINT “ =============================” A=2 WHILE A > 0 PRINT TAB(5) ; A ; B=3 WHILE B > 0 PRINT TAB(25) ; B B=B–1 WEND PRINT “------------------------------------------------“ A=A–1 WEND END
Pengulangan dan Pembacaan Data
Algoritma dan Pemrograman 1B
OUTPUT : VARIABEL A VARIABEL B ============================== 2 3 2 1 --------------------------------------------------1 3 2 1 ---------------------------------------------------
Ada dua pengulangan, pengulangan pertama berdasarkan variabel A. Pengulangan berakhir jika variabel A = 0 , sedangkan pengulangan kedua terjadi di dalam pengulangan pertama. Pengulangan kedua berdasarkan variabel B. Pengulangan ini berakhir jika variabel B = 0.
Pengulangan dan Pembacaan Data
Algoritma dan Pemrograman 1B
PERINTAH DO LOOP Statement DO LOOP merupakan alternatif lain pengulangan proses. Cara kerjanya mirip statement WHILE ….. WEND. Namun statement DO LOOP lebih fleksibel, sebab pada statement DO LOOP terdapat fasilitas untuk keluar dari pengulangan, tanpa harus memenuhi kondisi yang telah ditetapkan. Ada 4 macam statement DO LOOP, yaitu: 1. 2. 3. 4.
DO WHILE ….. LOOP DO UNTIL ….. LOOP DO ….. LOOP WHILE DO ….. LOOP UNTIL
PERINTAH DO WHILE ….. LOOP DO WHILE kondisi1 Statement1 …………. …………. …………. LOOP
Blok-1
Jika kondisi1 BENAR, proses selanjutnya yang akan dikerjakan adalah kelompok statement yang terletak di dalam blok-1. Proses ini dilakukan berulang dan akan berakhir jika kondisi1 SALAH.
Contoh : CLS HITUNG = 10 DO WHILE HITUNG > 1 PRINT HITUNG IF HITUNG = 5 THEN EXIT DO HITUNG = HITUNG – 1 LOOP PRINT “PROSES SELESAI” END OUTPUT : 10 9 7 6 5 PROSES SELESAI
Pengulangan dilakukan selama nilai pada variabel HITUNG > 1. Dengan adanya IF HITUNG = 5 THEN EXIT DO, pengulangan akan berakhir jika nilai pada variabel HITUNG = 5.
Pengulangan dan Pembacaan Data
Algoritma dan Pemrograman 1B
PERINTAH DO UNTIL ….. LOOP
DO UNTIL kondisi1 Statement1 …………. …………. LOOP
Blok-1
Proses pengulangan akan berakhir jika kondisi telah terpenuhi. Proses pengulangan akan terus berlangsung selama kondisi1 belum terpenuhi.
Contoh : CLS HITUNG = 10 DO WHILE HITUNG > 1 PRINT HITUNG HITUNG = HITUNG – 1 LOOP PRINT “PROSES SELESAI” END
Pada contoh di atas, statement DO menggunakan WHILE. Pengulangan akan terus berlangsung selama nilai pada variabel HITUNG > 1. Jika menggunakan kata UNTIL pada statement DO, maka program di atas menjadi : HITUNG = 10 DO UNTIL HITUNG <= 1 PRINT HITUNG HITUNG = HITUNG – 1 LOOP PRINT “PROSES SELESAI” END
Proses pengulangan terus berlangsung sampai nilai pd variabel HITUNG < = 1. OUTPUT : 10 9 8 7 6 5 4 3 2 PROSES SELESAI
Pengulangan dan Pembacaan Data
Algoritma dan Pemrograman 1B
PERINTAH DO ….. LOOP WHILE DO Statement1 …………. …………. LOOP WHILE kondisi1
Pengulangan akan berakhir jika kondisi1 bernilai benar.
Contoh : JWB$ = “ “ DO CLS INPUT JWB$ LOOP WHILE JWB$ <> “Y” AND JWB$ <> “Y” END
Pengulangan akan berakhir jika isi variabel JWB$ = “Y”. Sebelum dilakukan pemeriksaan kondisi tersebut statement di dalam blok DO … LOOP telah dikerjakan terlebih dahulu.
PERINTAH DO … LOOP UNTIL DO Statement1 …………. …………. LOOP UNTIL kondisi1
Blok1
Pengulangan di dalam blok statement akan berakhir jika kondisi1 telah terpenuhi atau bernilai benar.
Contoh : JUMLAH = 0 CLS DO JUMLAH = JUMLAH + 1 PRINT “********************” LOOP UNTIL JUMLAH = 5 END
Proses pengulangan akan berakhir jika nilai pada variabel JUMLAH = 5
Pengulangan dan Pembacaan Data
Algoritma dan Pemrograman 1B
PERINTAH EXIT DO Statement EXIT DO merupakan suatu cara untuk keluar dari proses pengulangan di dalam blok statement DO …. LOOP. Perhatikan bagan di bawah ini : DO Statement1 …………. IF kondisi2 THEN EXIT DO …………. …………. LOOP UNTIL kondisi1 Statement2
Blok1
Jika kondisi1 bernilai BENAR, proses akan dilanjutkan ke kelompok statement yang terletak di blok-1. Proses ini dilakukan berulang dan akan berakhir jika kondisi1 bernilai SALAH atau nilai kondisi2 bernilai BENAR. Dalam blok-1 terdapat statement pencabangan lain yaitu IF kondisi2 THEN EXIT DO. Jika kondisi2 bernilai BENAR, proses akan keluar dari blok-1 dan dilanjutkan dengan mengerjakan statement yang terletak setelah kata LOOP. Walaupun kondisi1 masih bernilai BENAR maka proses pengulangan akan berakhir, jika kondisi2 juga bernilai BENAR.
Contoh : CLS HITUNG = 10 DO WHILE HITUNG > 1 PRINT HITUNG IF HITUNG = 5 THEN EXIT DO HITUNG = HITUNG – 1 LOOP PRINT “PROSES SELESAI” END OUTPUT : 10 9 8 7 6 5 PROSES SELESAI Proses pengulangan dilakukan selama nilai HITUNG > 1 Tetapi dengan adanya statement IF HITUNG = 5 THEN EXIT DO, maka pengulangan akan berakhir jika variabel HITUNG = 5. Pengulangan dan Pembacaan Data
Algoritma dan Pemrograman 1B