Algoritma & Pemrograman 1B Sesi /Perkuliahan ke : 8 Pengulangan Halaman 1 dari 52
Algoritma & Pemrograman 1B
Sesi /Perkuliahan ke : 8
Pengulangan Halaman 1 dari 40
Algoritma & Pemrograman 1B
Tujuan Instruksional Khusus :
1. Agar mahasiswa dapat memahami dan menggunakan statemen pengulangan
dengan FOR NEXT.
2. Agar mahasiswa dapat memahami dan menggunakan statemen ON n GOTO
dan ON n GOSUB.
3. Agar mahasiswa dapat memahami penggunaan subrutin.
Pengulangan Halaman 2 dari 40
Algoritma & Pemrograman 1B
Pokok Bahasan : PENGULANGAN
Deskripsi Singkat : Dalam pertemuan ini akan mempelajari tentang statemen
pengulangan FOR NEXT, FOR NEXT bersarang , ON n GOTO dan ON n GOSUB.
Materi ini berguna dalam membuat program looping secara otomatis dan program
subrutin, selain itu juga untuk mengikuti perkuliahan berikutnya yaitu report dan file.
Pengulangan Halaman 3 dari 40
Algoritma & Pemrograman 1B
Referensi :
1. Seri Diktat Kuliah : Pengantar Algoritma Dan Pemrograman Teknik
Diagram AluDan Bahasa BASIC Dasar, Penerbit GUNADARMA, Jakarta,
1991.
2. Yay Singleman, Business Programming Logic 2nd –ed, Prentice Hall
Engelwood Cliffs, New Jersey,1982.
3. Gottfried, Programming in BASIC , Mc Graw Hill, New York, 1981
Pengulangan Halaman 4 dari 40
Algoritma & Pemrograman 1B
4. Insap Santosa, Pemrograman Terapan Menggunakan QUICK BASIC, Andi
Offset, Yogyakarta,1997.
5. Jogiyanto, H.M.,Teori dan Aplikasi Program Komputer Bahasa BASIC, edisi
5, Andi Offset, Yogyakarta.
6. Rijanto Tosin, Quik BASIC, Dinastindo.
Pengulangan Halaman 5 dari 40
Algoritma & Pemrograman 1B
FOR NEXTStatemen FOR NEXT digunakan bila kita hendak melakukan looping secara otomatis
dari sebuah bilangan tertentu sampai bilangan tertentu.
Pengulangan Halaman 6 dari 40
PENGULANGAN
Algoritma & Pemrograman 1B
Bentuk Umum :
FOR pencacah = awal TO akhir [ STEP langkah ]
[ statement1 ]
[ statement2 ]
NEXT [ pencacah ]
dengan parameter-parameternya :
Pengulangan Halaman 7 dari 40
Algoritma & Pemrograman 1B
pencacah : nama sembarang perubah numeris yang berfungsi
mengendalikan banyaknya proses berulang.
Awal : nilai awal atau batas bawah pencacah
Akhir : nilai kahir atau batas atas pencacah
Langkah : pertambahan nilai pencacah
statement1,
Statement2,. . : statement-statement yang akan diproses ulang.
Pengulangan Halaman 8 dari 40
Algoritma & Pemrograman 1B
Dari bentuk umum diatas :
Jika kata STEP dan parameter langkah tidak ditulis, maka nilai parameter
langkah dianggap bernilai sama dengan 1.
Pemakaian FOR . . . NEXT berlaku ketentuan sebagai berikut :
- Jika nilai awal < akhir, nilai langkah harus lebih besar dari 0
- Jika nilai awal > akhir, nilai langkah harus lebih kecil dari 0
Pengulangan Halaman 9 dari 40
Algoritma & Pemrograman 1B
Contoh :
1. CLS
FOR i% = 1 TO 10
PRINT i%;
NEXT i
Pengulangan Halaman 10 dari 40
Algoritma & Pemrograman 1B
END
Output : 1 2 3 4 5 6 7 8 9 10
→ dikerjakan 10 kali
2. CLS
FOR i% = 1 TO 10 STEP 2
Pengulangan Halaman 11 dari 40
Algoritma & Pemrograman 1B
PRINT i%;
NEXT i
END
Output : 1 3 5 7 9
→ dikerjakan 5 kali
Pengulangan Halaman 12 dari 40
Algoritma & Pemrograman 1B
3. CLS
FOR i = -1 TO -5 STEP -0.5
PRINT I ;
NEXT i
END
Output : -1-1.5-2-2.5-3-3.5-4-4.5-5
Pengulangan Halaman 13 dari 40
Algoritma & Pemrograman 1B
→ dikerjakan 9 kali
Bagan alir statement FOR . . . NEXT
Pengulangan Halaman 14 dari 40
Awal kalang
Pencacah = awal
PencacahLebih besar
akhir
Akhir kalang
Kerjakan semua statementYang terletak antara
statement FOR dan NEXT
Pencacah = pencacah + langkah
tidak
Ya
Algoritma & Pemrograman 1B
Pengulangan Halaman 15 dari 40
Algoritma & Pemrograman 1B
Kalang Tersarang
Pengulangan Halaman 16 dari 40
Algoritma & Pemrograman 1B
Di dalam sebuah statement FOR . . . NEXT juga dimungkinkan adanya statement
FOR . . . NEXT yang lain. Keadaan yang demikian ini disebut dengan kalang
tersarang (nested loop).
Dalam kalang tersarang ada 2 ketentuan :
1. Harus menggunakan perubah kendali yang berlainan
2. Antara kalang yang satu dengan kalang yang lain tidak boleh saling berpotongan
Contoh kalang tersarang yang tidak saling berpotongan
Pengulangan Halaman 17 dari 40
Algoritma & Pemrograman 1B
FOR i = 1 TO 10 FOR i = 1 TO 10
FOR j = 1 TO 10 FOR j = 1 TO 10
PRINT i, j, I * j PRINT i, j, I * j
NEXT i NEXT j
NEXT j NEXT i
a b
Pengulangan Halaman 18 dari 40
Algoritma & Pemrograman 1B
kalang tersarang :
a. Berpotongan
b. Tidak berpotongan.
Ket :
Pencacah i disebut kalang luar
Pengulangan Halaman 19 dari 40
Algoritma & Pemrograman 1B
Pencacah j disebut kalang dalam
Dalam kalang tersarang banyaknya kata FOR harus sesuai dengan banyaknya
kata NEXT dengan perubah kendali yang sama.
Jika anda menuliskan program seperti dibawah ini :
FOR i = 1 TO 10
FOR j = 1 TO 10
PRINT i, j, i * j
Pengulangan Halaman 20 dari 40
Algoritma & Pemrograman 1B
NEXT j, i
Anda harus berhati-hati dengan statement j, i. Jika anda menuliskan NEXT i, j
akan menyebabkan dua buah operasi kalang tersebut saling berpotongan.
ON n GOTO
Pengulangan Halaman 21 dari 40
Algoritma & Pemrograman 1B
Statemen ON n GOTO digunakan untuk pemilihan proses. Proses akan pergi ke suatu
nomor baris tertentu sesuai dengan nilai n.
Bentuk Umum :
ON n GOTO nomor baris [.,nomor baris]…
Contoh :
CLS
Pengulangan Halaman 22 dari 40
Algoritma & Pemrograman 1B
PRINT “Ketik 1, 2, 3, 4 atau 5
INPUT n
ON n GOTO 60, 40, 80, 100, 110
40 PRINT “ANDA MASUK GROUP BASIC”
GOTO 110
60 PRINT “ANDA MASUK GROUP COBOL”
GOTO 110
Pengulangan Halaman 23 dari 40
Algoritma & Pemrograman 1B
80 PRINT “ANDA MASUK GROUP PASCAL”
GOTO 110
100 PRINT “ANDA MASUK GROUP FORTRAN”
110 END
ON N GOSUB
Pengulangan Halaman 24 dari 40
Algoritma & Pemrograman 1B
Statement ini sifatnya adalah gabungan antara statement ON n GOTO dan
GOSUB-RETURN itu sendiri.
Dimana :
ON n GOTO, proses menuju ke nomor baris yang tergantung dari nilai N nya,
untuk kemudian proses berlanjut seperti biasa.
Pengulangan Halaman 25 dari 40
Algoritma & Pemrograman 1B
ON n GOSUB-RETURN, proses ini juga akan menuju ke nomor baris yang
tergantung dari nilai N nya, tetapi proses akan kembali lagi ke program yang
memanggilnya di bawah statement ON n GOSUB bersangkutan bila ditemui
statement RETURN.
Contoh :
FOR I = 1 to 2
Pengulangan Halaman 26 dari 40
Algoritma & Pemrograman 1B
ON I GOSUB 50, 60
NEXT I
PRINT “END”
END
50 PRINT “I = ” ; I ; “ Ke nomor baris 50”
RETURN
60 PRINT “I = ” ; I ; “ Ke nomor baris 60”
Pengulangan Halaman 27 dari 40
Algoritma & Pemrograman 1B
RETURN
END
LATIHAN
1. CLS
JumlahData% = 0
Pengulangan Halaman 28 dari 40
Algoritma & Pemrograman 1B
INPUT “Banyaknya data : “ ; n%
FOR i% = 1 to n%
PRINT “Isikan data ke “ ; i% “ : ;
INPUT dataKe%
JumlahData% = jumlahData% + datake%
NEXT i%
PRINT “Jumlah semua data : “ ; jumlahData%
Pengulangan Halaman 29 dari 40
Algoritma & Pemrograman 1B
PRINT “Selesai…!”
END
Output :
Banyaknya data : ? 2
Isikan data ke 1 : ? 3
Isikan data ke 2 : ? 2
Pengulangan Halaman 30 dari 40
Algoritma & Pemrograman 1B
Jumlah semua data : ? 5
Selesai
2. PRINT “ <<< MENU >>>”
PRINT “ 1. Menghitung Luas 4 Persegi Panjang”
PRINT “ 2. Menghitung Luas Segitiga
Pengulangan Halaman 31 dari 40
Algoritma & Pemrograman 1B
50 INPUT “ Pilih Nomer (1-2) “ ; Pilih
ON Pilih GOTO 100, 200
GOTO 50
100 INPUT “Panjang 4 Persegi Panjang “ ; Panjang
INPUT “Lebar 4 Persegi Panjang “ ; Lebar
Pengulangan Halaman 32 dari 40
Algoritma & Pemrograman 1B
Luas = Panjang * Lebar
PRINT “Luas 4 Persegi Panjang = “ ; Luas
END
200 INPUT “Tinggi Segi-3 “ ; Tinggi
INPUT “Panjang Sisi Tegak Lurus Tinggi “ ; Panjang
LuasSegi3 = Panjang * . 5 * Tinggi
Pengulangan Halaman 33 dari 40
Algoritma & Pemrograman 1B
PRINT “Luas Segitiga = “ ; LuasSegi3
END
Output :
<<< MENU >>>
1. Menghitung Luas 4 Persegi Panjang
2. Menghitung Luas Segitiga
Pengulangan Halaman 34 dari 40
Algoritma & Pemrograman 1B
Pilih Nomer (1-2)? 1
Panjang 4 Persegi Panjang ? 6
Lebar 4 Persegi Panjang ? 2
Luas = 12
TUGAS !!!
Pengulangan Halaman 35 dari 40
Algoritma & Pemrograman 1B
1. Buatlah program untuk menampilkan deret sbb:
2 + 4 + 6 + 8 + 10 = 30
2 + 4 + 6 + 8 = 20
2 + 4 + 6 = 12
2 + 4 = 6
2 = 2
Pengulangan Halaman 36 dari 40
Algoritma & Pemrograman 1B
2. Apakah output program di bawah ini !! ‘ --------------------------------------------------------------------
‘ CONTOH PEMAKAIAN GOSUB
‘ ---------------------------------------------------------------------
‘ ** PROGRAM UTAMA
LET GJKOTOR = 1000000
Pengulangan Halaman 37 dari 40
Algoritma & Pemrograman 1B
PRINT “ GAJI KOTOR = “ ; GJKOTOR
GOSUB PAJAK
GJBERSIH = GJKOTOR – PJGAJI
PRINT “GAJI SETELAH KENA PAJAK = “ ; GJBERSIH
END
‘ ** SUBRUTIN
Pengulangan Halaman 38 dari 40
Algoritma & Pemrograman 1B
PAJAK :
PJGAJI = ( 10 / 100 ) * GJKOTOR
PRINT “ PAJAK GAJI : “ ; PJGAJI
RETURN
Pengulangan Halaman 39 dari 40
Algoritma & Pemrograman 1B
Pengulangan Halaman 40 dari 40