Senin, 06 Juni 2011

PENGULANGAN


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
  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

 
 



v FOR    NEXT
Statemen FOR NEXT digunakan bila kita hendak melakukan looping secara otomatis dari sebuah bilangan tertentu sampai bilangan tertentu.

Bentuk Umum :
            FOR pencacah = awal TO akhir [ STEP langkah ]
                        [ statement1 ]
                        [ statement2 ]
            NEXT [ pencacah ]

dengan parameter-parameternya :
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.

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


Contoh :
1.      CLS
      FOR i% = 1 TO 10
            PRINT i%;
      NEXT i
      END

Output :           1 2 3 4 5 6 7 8 9 10
      → dikerjakan 10 kali

2.      CLS
      FOR i% = 1 TO 10 STEP 2
            PRINT i%;
      NEXT i
      END

Output :           1 3 5 7 9
      → dikerjakan 5 kali

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
      → dikerjakan 9 kali






Bagan alir statement FOR . . . NEXT
 


















v Kalang Tersarang


      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
     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


kalang tersarang :
a.       Berpotongan
b.      Tidak berpotongan.

Ket :
§  Pencacah i disebut kalang luar
§  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
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.  

v ON n GOTO

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
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
80        PRINT “ANDA MASUK GROUP PASCAL”
GOTO 110
100      PRINT “ANDA MASUK GROUP FORTRAN”
110      END
     
v ON N GOSUB
         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.
§    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           
            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”
            RETURN
            END

LATIHAN


1.                        CLS
JumlahData% = 0
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%
PRINT “Selesai…!”
END

Output :
Banyaknya data : ? 2
Isikan data ke 1 : ? 3
Isikan data ke 2 : ? 2
Jumlah semua data : ? 5
Selesai

2.    PRINT “                           <<< MENU >>>”
               PRINT
               PRINT “                   1. Menghitung Luas 4 Persegi Panjang”
               PRINT “                   2. Menghitung Luas Segitiga
               PRINT
      50     INPUT “                  Pilih Nomer (1-2) “ ; Pilih
               ON Pilih GOTO 100, 200
               PRINT
               GOTO 50
      100   INPUT “Panjang 4 Persegi Panjang “ ; Panjang
INPUT “Lebar 4 Persegi Panjang “ ; Lebar
Luas = Panjang * Lebar
PRINT
PRINT “Luas 4 Persegi Panjang = “ ; Luas
END
200  INPUT “Tinggi Segi-3 “ ; Tinggi
       INPUT “Panjang Sisi Tegak Lurus Tinggi “ ; Panjang
       LuasSegi3 = Panjang * . 5 * Tinggi
       PRINT “Luas Segitiga = “ ; LuasSegi3
       END

Output :
                                                <<< MENU >>>
1.      Menghitung Luas 4 Persegi Panjang
2.      Menghitung Luas Segitiga
                                   
                                    Pilih Nomer (1-2)? 1
      Panjang 4 Persegi Panjang ? 6
      Lebar 4 Persegi Panjang ? 2
      Luas = 12

TUGAS !!!
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

2.   Apakah output program di bawah ini !!
        --------------------------------------------------------------------
                    CONTOH PEMAKAIAN GOSUB
         ---------------------------------------------------------------------
         ** PROGRAM UTAMA
      LET GJKOTOR = 1000000
      PRINT “ GAJI KOTOR = “ ; GJKOTOR
      GOSUB PAJAK
      GJBERSIH = GJKOTOR – PJGAJI
      PRINT “GAJI SETELAH KENA PAJAK = “ ; GJBERSIH
      END

        ** SUBRUTIN
      PAJAK :
               PJGAJI = ( 10 / 100 ) * GJKOTOR
               PRINT “ PAJAK GAJI : “ ; PJGAJI
      RETURN

     








Tidak ada komentar:

Posting Komentar