pengulanganpembacaandata(minggu ke iv).doc
Post on 13-Jan-2017
225 Views
Preview:
TRANSCRIPT
Algoritma &Pemrogrammam 1B
Sesi/Perkuliahan ke: 4
Tujuan Instruksional Khusus :
Agar mahasiswa dapat membuat program dengan proses pemutaran kembali
(looping).
Pokok Bahasan : PENGULANGAN PEMBACAAN DATA
Deskripsi singkat : Dalam pertemuan ini akan mempelajari tentang pembuatan
progrm dengan menggunakan proses pemutaran kembali (looping) dan menggunakan
Panji/Flag. Statemen ini berguna untuk mengikuti perkuliahan berikutnya tentang
satemen input.
Referensi :
1. Seri Diktat Kuliah : Pengantar Algoritma dan Pemrograman : Teknik diagram
alur dan bahasa Basic Dasar, Penerbit Gunadarma
2. Yay Singleman, Business Programming Logic 2nd –ed, Prentice Hall
Engelwood Cliffs, NewJersey, 1982.
3. Gottfried, Programming in BASIC, MC Graw Hil, Ne York, 1981.
4. Insap Santosa, Program-program Terapan Menggunakan Quick Basic, Andi
Yogyakarta.
5. Jogiyanto, Teori dan Aplikasi dan Program Komputer Bahasa Basic, Andi
Yogyakarta.
6. Rijanto Tosin, Quick Basic, Dinastindo.
Pengulangan Pembacaan Data Halaman 1 dari 21
Algoritma &Pemrogrammam 1B
PENGULANGAN DAN PEMBACAAN DATA
1. PENGULANGAN TUNGGAL
Untuk menghindari penulisan instruksi secara berulangan (looping), QuickBASIC
menyediakan statement FOR-NEXT. Dimana banyaknya iterasi pengulangan dapat
ditentukan. Perhatikan contoh program di bawah ini :
CLS
PRINT “KOMPUTER”
PRINT “KOMPUTER”
PRINT “KOMPUTER”
PRINT “KOMPUTER”
PRINT “KOMPUTER”
END
Penulisan program di atas tidak efisien karena terjadi pengulangan statement, dalam
hal ini statement PRINT diulang sebanyak 5 kali. Di bawah ini program yang identik
dengan program di atas.
CLS
FOR I = 1 TO 5
PRINT “KOMPUTER”
NEXT I
END
OUTPUT :
KOMPUTER
Pengulangan Pembacaan Data Halaman 2 dari 21
Algoritma &Pemrogrammam 1B
KOMPUTER
KOMPUTER
KOMPUTER
KOMPUTER
Statement yang akan diproses berulang diletakkan di antara FOR dan NEXT
FOR I = 1 TO 5 berarti pengulangan yang harus dilakukan adalah sebanyak 5
kali. Variabel I digunakan sebagai indikator pengulangan. Proses pengulangan
akan berhenti jika variable I telah mencapai 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
Jumlah statement yang dapat diletakkan di antara statement FOR-NEXT tidak
terbatas hanya satu baris statement saja. Penggunaan kata STEP 2 pada statement
Pengulangan Pembacaan Data Halaman 3 dari 21
Algoritma &Pemrogrammam 1B
FOR K = 1 TO 20 berarti variabel K akan bertambah sebanyak 2. Proses pengulangan
berakhir jika nilai variabel K lebih besar dari 20.
Contoh :
CLS
PRINT “ LANGKAH KE NILAI VARIABEL K”
PRINT “ -------------------------------------------------------“
FORMAT$ = “ ## ## “
COUNTER = 1
FOR K = 1 TO 20 STEP 2
PRINT USING FORMAT$; COUNTER; K
COUNTER = COUNTER + 1
NEXT K
END
OUTPUT :
LANGKAH KE NILAI VARIABEL K
1 1
2 3
3 5
4 7
5 9
6 11
7 13
8 15
9 17
10 19
Pengulangan Pembacaan Data Halaman 4 dari 21
Algoritma &Pemrogrammam 1B
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
Penggunaan STEP -2 pada statement FOR K = 20 TO 1 menyebabkan nilai
variabel K berkurang sebanyak 2, dimana nilai awalnya adalah 20.
Proses pengulangan akan berakhir jika variabel K lebih kecil dari 1.
Pengulangan Pembacaan Data Halaman 5 dari 21
Algoritma &Pemrogrammam 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 ……….
Pengulangan Pembacaan Data Halaman 6 dari 21
Algoritma &Pemrogrammam 1B
Untuk menentukan banyaknya pengulangan dapat digunakan variabel.
Pada contoh di atas terlihat pada statement FOR I = 1 TO JUMDATA, nilai
JUMDATA diletakkan statement DATA 10 dan diakses melalui statement READ
JUMDATA.
Pengulangan akan berakhir bila nilai variabel I lebih besar dari nilai variabel
JUMDATA.
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 ……….
Pengulangan dapat dihentikan dengan EXIT FOR
Pada baris statement IF COUNTER = 7 THEN EXIT FOR menyebabkan
pengulangan dihentikan jjika counter mencapai 7.
Pengulangan Pembacaan Data Halaman 7 dari 21
Algoritma &Pemrogrammam 1B
Statement EXIT FOR menyebabkan pengulangan dihentikan, dimana proses
selanjutnya yang akan dikerjakan adalah statement yang terletak setelah statement
NEXT.
2. PENGULANGAN JAMAK
Pengulangan jamak dikenal sebagai Nested Looping yang merupakan pengulangan
yang terjadi di dalam suatu pengulangan. Perhatikan bentuk bagan di bawah ini :
FOR I = ………….
Statement 1
Statement 2
FOR J = ……….
Statement 3
Statement 4
NEXT J
NEXT I
pada bagan di atas terlihat bahwa di dalam statement FOR I ……NEXT I terdapat
pengulangan lain yaitu statement FOR J …….. NEXT J
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 5
Pengulangan Pembacaan Data Halaman 8 dari 21
Algoritma &Pemrogrammam 1B
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
5
--------------------------------------------------
2 1
2
3
4
5
--------------------------------------------------
3 1
2
3
4
5
--------------------------------------------------
Pengulangan Pembacaan Data Halaman 9 dari 21
Algoritma &Pemrogrammam 1B
3. PERINTAH WHILE …WEND
Statement WHILE ….. WEND merupakan alternatif lain untuk melakukan
pengulangan proses.
WHILE kondisi1
Statement1
…………. Blok -1
………….
WEND
Jika kondisi BENAR, maka proses selanjutnya yang akan dikerjakan adalah
kelompok statement yang terletak di dalam 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 < 7
PRINT HITUNG
HITUNG = HITUNG + 1
WEND
PRINT “PROSES PENGULANGAN SELESAI”
PRINT “KARENA NILAI VARIABEL HITUNG = “; HITUNG
END
Pengulangan Pembacaan Data Halaman 10 dari 21
Algoritma &Pemrogrammam 1B
OUTPUT :
0
1
2
3
4
5
6
PROSES PENGULANGAN SELESAI
KARENA NILAI VARIABEL HITUNG = 7
Jika nilai HITUNG lebih kecil dari 7, proses akan mengerjakan kelompok
statement yang terletak diantara WHILE dan WEND.
Setelah itu, proses kembali ke baris WHILE untuk memeriksa apakah nilai
HITUNG masih lebih kecil dari 7.
Jika nilai HITUNG masih lebih kecil dari 7, proses kembali mengerjakan
kelompok statement yang terletak diantara WHILE dan WEND.
Pengulangan ini dilakukan sampai nilai HITUNG lebih besar atau sama dengan 7.
Setelah proses pengulangan berakhir, statement berikutnya yang dikerjakan
adalah statement yang terletak di bawah kata WEND yaitu PRINT “PROSES
PENGULANGAN SELESAI”
Ada alternatif bentuk penulisan WHILE ….. WEND lain, yaitu memakai bentuk
WHILE ….. WEND bertingkat . Perhatikan bagan di bawah ini:
WHILE kondisi1
Pengulangan Pembacaan Data Halaman 11 dari 21
Algoritma &Pemrogrammam 1B
Statement1
………….
WHILE kondisi2
Statement4
………….. blok-2 blok-1
…………..
WEND
Statement7
………….
WEND
Pada bagan di atas terlihat, di dalam statement WHILE ….. WEND pertama
terdapat statement WHILE ….. WEND lain.
Jika kondisi 1 bernilai BENAR, maka prose berikut yang akan dikerjakan adalah
kelompok statement yang terletak di dalam blok-1.
Contoh :
CLS
PRINT “ VARIABEL A VARIABEL B “
PRINT “ =============================”
A = 3
WHILE A > 0
PRINT TAB(5) ; A ;
B = 3
WHILE B > 0
PRINT TAB(25) ; B
B = B – 1
WEND
PRINT “------------------------------------------------“
Pengulangan Pembacaan Data Halaman 12 dari 21
Algoritma &Pemrogrammam 1B
A = A – 1
WEND
END
OUTPUT :
VARIABEL A VARIABEL B
==============================
3 3
2
1
---------------------------------------------------
2 3
2
1
----------------------------------------------------
1 3
2
1
----------------------------------------------------
Pada contoh di atas terdapat dua pengulangan, pengulangan pertama ditentukan
berdasarkan variabel A.
Pengulangan ini akan berakhir jika variabel A = 0 , sedangkan pengulangan
kedua terjadi di dalam pengulangan pertama.
Pengulangan kedua ditentukan berdasarkan variabel B. Pengulangan ini akan
berakhir jika variabel B = 0.
PERINTAH DO LOOP
Pengulangan Pembacaan Data Halaman 13 dari 21
Algoritma &Pemrogrammam 1B
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. DO WHILE ….. LOOP
2. DO UNTIL ….. LOOP
3. DO ….. LOOP WHILE
4. DO ….. LOOP UNTIL
PERINTAH DO WHILE ….. LOOP
Perhatikan bagan di bawah ini :
DO WHILE kondisi1
Statement1
………….
…………. Blok-1
………….
LOOP
Jika kondisi1 bernilai BENAR, maka proses selanjutnya yang akan dikerjakan
adalah kelompok statement yang terletak di dalam blok-1.
Proses ini dilakukan secara berulang dan akan berakhir jika kondisi1 bernilai
SALAH.
Contoh :
Pengulangan Pembacaan Data Halaman 14 dari 21
Algoritma &Pemrogrammam 1B
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 lebih besar dari 1.
Dengan adanya statement IF HITUNG = 5 THEN EXIT DO maka pengulangan
akan berakhir jika nilai pada variabel HITUNG = 5.
PERINTAH DO UNTIL ….. LOOP
Pengulangan Pembacaan Data Halaman 15 dari 21
Algoritma &Pemrogrammam 1B
Statement ini mempunyai bentuk sebagai berikut :
DO UNTIL kondisi1
Statement1
…………. Blok-1
………….
LOOP
Proses pengulangan akan berakhir jika kondisi telah terpenuhi.
Prose 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 kita menggunakan kata UNTIL pada statement DO, maka contoh program di
atas menjadi :
Pengulangan Pembacaan Data Halaman 16 dari 21
Algoritma &Pemrogrammam 1B
HITUNG = 10
DO UNTIL HITUNG <= 1
PRINT HITUNG
HITUNG = HITUNG – 1
LOOP
PRINT “PROSES SELESAI”
END
Pada contoh di atas, proses pengulangan akan terus berlangsung sampai nilai
pada variabel HITUNG lebih kecil atau sama dengan 1.
OUTPUT :
10
9
8
7
6
5
4
3
2
PROSES SELESAI
PERINTAH DO ….. LOOP WHILE
Pada statement ini, proses pemeriksaan kondisi akan dilakukan setelah proses
di dalam blok DO ….. LOOP dikerjakan.
Pengulangan Pembacaan Data Halaman 17 dari 21
Algoritma &Pemrogrammam 1B
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
Statement ini mempunyai bentuk sebagai berikut :
DO
Statement1
…………. Blok1
………….
LOOP UNTIL kondisi1
Pengulangan Pembacaan Data Halaman 18 dari 21
Algoritma &Pemrogrammam 1B
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
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
…………. Blok1
IF kondisi2 THEN EXIT DO
………….
………….
LOOP UNTIL kondisi1
Statement2
Pengulangan Pembacaan Data Halaman 19 dari 21
Algoritma &Pemrogrammam 1B
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
Pengulangan Pembacaan Data Halaman 20 dari 21
Algoritma &Pemrogrammam 1B
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.
TUGAS!
Buatlah program untuk membuat table dibawah ini!
-------------------------------------------------
| NO. | NAMA MHS | NILAI |
-------------------------------------------------
| 1. | BAMBANG S | B |
| 2. | SANTI R | A |
| 3. | GUNAWAN | A |
| 4. | CANTIKA | B |
| 5. | IRAWAN | C |
Pengulangan Pembacaan Data Halaman 21 dari 21
top related