Sabtu, 19 November 2011

array

ARRAY

v Array atau Larik
Array atau Larik adalah sekumpulan data  yang mempunyai tipe data sejenis. Misalnya numerik atau  string, dan diidentifikasikan dengan sebuah nama variable array.
Di dalam sebuah array, setiap rinci data disebut dengan komponen atau elemen array, ditentukan oleh suatu besaran yang disebut dengan subskrib atau index  yang menunjukkan letak sebuah elemen dalam array.
Berdasarkan banyaknya subskrib yang menentukan letak suatu elemen dalam larik dikenal adanya array dimensi satu, arary dimensi dua dan array dimensi banyak.

v Array Dimensi Satu
Array dimensi satu disebut juga dengan vector, adalah sebuah array yang terdiri dari sejumlah elemen data, dan poisis setiap elemen ditentukan oleh sebuah subskrib.
Setiap array harus dideklarasikan terlebih dahulu, hal ini digunakan untuk mengalokasikan ruang memori yang akan digunakan dan juga menentukan tipe data dari elemen array.

Bentuk umum deklarasi array dimensi satu adl :
            DIM namavar ({cacah awal to akhir}) [As tipe]

Dengan cacah : banyaknya elemen array
              Awal : nomor awal subskrib
              Akhir : nomor akhir subskrib
              Tipe   : tipe data elemen array.

Contoh :          DIM baristabel(5)
                        DIM baristabel( 1 to 5)
                        DIM baristabel(5) As Integer
            Dari contoh deklarasi di atas maka akan disediakan ruang memori untuk array baristabel dengan jumlah elemen 5.
                       
40
30
100
80
75
           
Untuk mengoperasikan array digunakan subscrib.
            Baristabel(1) = 40,      Baristabel(2) = 30,      Baristabel(3) = 100
            Baristabel(4) = 80,      Baristabel(5) = 75


Contoh 1 :       REM PROGARRAY1
            DIM A(5)
                        LET A(1)=40 : A(2)=30 : A(3)=100 : A(4)=80 : A(5)=75
                        C = A(1) + A(2) + A(3) + A(4) + A(5)
            PRINT A(1) , A(2) , A(3) , A(4) , A(5)
                        PRINT “HASIL JUMLAH = “; C
                        END
Output:
                        40        30        100      80       75
                        HASIL JUMLAH = 325

Contoh 2 :       REM PROGARRAY2
                        DIM A(7)
                        C= 1
            10        READ A(C)
                        IF C=7 THEN 20
                        C = C + 1
            GOTO 10
20           PRINT A(3), A(5)
PRINT A(1) + A(5)   
PRINT A(6), A(4+2)
PRINT A(4)+A(3), A(7)
DATA 8,6,5,4,2,5,6,2,2,1,7,10,5
END
Output :
                        5          2
                        10
                        5          5
9                    6
Contoh 3 :       REM PROGARRAY3
                        DATA “KEN AROK”, “KEN DEDES”
                        DATA “TOHJAYA”, “ANUSAPATI”, “AMETUNG”
                        K = 1
            10        READ R$(K)
                        IF K = 5 THEN 20
                        K = K + 1
                        GOTO 10
                        PRINT  R$(2) :  PRINT R$(4)
                        END
Output :
                        KEN DEDES
                        ANUSAPATI

Pada program di atas, untuk pembacaan data menggunakan teknik kounter. Teknik lain yang lebih mudah adalah dengan menggunakan looping FOR NEXT.

Contoh 4 :       REM PROGARRAY4
            DATA “KEN AROK”, “KEN DEDES”
            DATA “TOHJAYA”, “ANUSAPATI”, “AMETUNG”
                        FOR K = 1 TO 5
                        READ R$(K)
                        NEXT K
                        PRINT  R$(2) :  PRINT R$(4)
                        END
Output :
                        KEN DEDES
                        ANUSAPATI

Contoh 5 :       REM PROGARRAY5
                        DATA 5,8,9,8,5
                        DIM X(5)
                        JUM = 0
                        FOR K = 1 TO 5
                        READ X(K)
                        JUM = JUM + X(K)
                        NEXT K
                        RATA = JUM / 5
PRINT “RATA-RATA =”; RATA
END
Output :
                        RATA-RATA = 7

v Array Dimensi Dua
Array dimensi dua, lebih dikenal dengan matriks atau tabel, adalah sekumpulan elemen yang sejenis, dan posisi setiap elemennya ditentukan oleh dua buah subskrib yaitu nomor baris dan nomor kolom.

Bentuk umum deklarasi array dimensi 2 adalah :
            DIM namavar (baris,kolom) [As tipe]                        atau
            DIM namavar baris1 to baris2, kolom1 to kolom2) [As tipe]

Dengan  Namavar : nama variable yang akan dideklarasikan sebagai array dua dimensi
              Baris       : cacah baris
              Kolom    : cacah kolom        

Contoh :  DIM M(2,3)                                    atau
                DIM M( 1 to 2, 1 to 3)
            Dari contoh deklarasi di atas maka akan disediakan ruang memori untuk array M dengan jumlah elemen 2 baris dan 3 kolom..

30
50
20
10
10
10

            Untuk mengoperasikan array digunakan subskrib.
            M(1,1)=30, M(1,2)=50, M(1,3)=20,
            M(2,1)=10, M(2,2)=10, M(2,3)=10

Contoh 6 :       REM PROGARRAY6
                        DIM M(2,3)
                        M(1,1)=30: M(1,2)=50: M(1,3)=20
                        M(2,1)=10: M(2,2)=10: M(2,3)=10
                        PRINT M(1,1) +M(2,2)
                        PRINT M(2,3)
                        END
Output:
                        40
                        10

Contoh 7 :       REM PROGARRAY7
            DIM A(3,2)
                        FOR B = 1 TO 3
                        FOR K = 1 TO 2
                        READ A(B,K)
                        PRINT A(B,K),
                        NEXT K
                        PRINT
                        NEXT B
                        PRINT
                        DATA 1,2,1,2,1,2,1,2
                        PRINT  A(2,1)+A(3,1) : END
Output:
                        1          2         
1          2
1          2
2

v Array Dimensi Banyak
Array dimensi banyak merupakan array yang dimensinya lebih dari satu.

Bentuk umum deklarasinya :
            DIM namavar (b,k,h,…,dn) [As tipe ]           atau
            DIM namavar (b1 to b2,k1to k2, h1 to h2,…, dn1 to dn2) [As tipe]          

Contoh : DIM  M(2,3,4)         atau
               DIM  M(1 to 2, 1 to 3, 1 to 4)

Dalam operasinya menggunakan subskrib 3 dimensi, yaitu :
M(1,1,1),M(1,1,2),M(1,1,3),M(1,1,4)
M(1,2,1),M(1,2,2),M(1,2,3),M(1,2,4)
M(1,3,1),M(1,3,2),M(1,3,3),M(1,3,4)
M(2,1,1),M(2,1,2),M(2,1,3),M(2,1,4)
M(2,2,1),M(2,2,2),M(2,2,3),M(2,2,4)
M(2,3,1),M(2,3,2),M(2,3,3),M(2,3,4)

Latihan
1. Buatlah sebuah program untuk menghasilkan laporan sbb:
            DAFTAR GAJI PEGAWAI

            NAMA           TOTAL GAJI
            ----------------------------------
            INA                 1500000
            ANI                 1300000
            NIA                 1250000
            ANE                1000000
            ANU               7500000
       Dengan variable subskrib nama, gapok, tunjangan diinput dengan looping menggunakan teknik kounter.
       Total gaji diperoleh dari gapok ditambah tunjangan.
           
Jawab :
            DIM NAMA$(5), GAPOK (5), TUNJ(5), TOTALGAJI(5)
            K= 1
    10    INPUT “NAMA                     = “, NAMA$(K)
            INPUT “GAJI            POKOK         = “,GAPOK(K)
            INPUT “TUNJANGAN         = “,TUNJ(K)
            TOTALGAJI(K) = GAPOK(K) +     TUNJ(K)
IF K=5 THEN 20
            K = K + 1
            GOTO 10
            CLS
   20     PRINT “DAFTAR GAJI PEGAWAI”
            PRINT
            PRINT “ NAMA”;TAB(15);”TOTAL GAJI”
            PRINT “-----------------------------------“
            FOR K = 1 TO 5
            PRINT NAMA$(K);TAB(15);TOTALGAJI(K)
            NEXT K
            END

2. Apakah output dari program dibawah ini !

            DATA 1,1,1,2,1,2,2,1,2,2,2,1,2,999
            C(1) = 0 : C(2) = 0
     10   READ X
            IF X = 999 THEN 20
            C(X) = C(X)  + 1
            GOTO 10
    20    PRINT “CALON”,”JUMLAH SUARA”
            PRINT “1            “, C(1)
            PRINT “2            “, C(2)
END

Jawab :
            CALON          JUMLAH SUARA
1                                            6
2                      7

3.  Buatlah program untuk penjumlahan matriks A(2,3) dan B(2,3)

Jawab:
            DIM A(2,3),B(2,3),C(2,3)
            FOR J = 1 T0 2
                        FOR K = 1 TO 3
                        INPUT A(J,K),B(J,K)
                        C(J,K) = A(J,K) + B(J,K)
                        NEXT K
            NEXT J
            FOR J = 1 T0 2
                        FOR K = 1 TO 3
                        PRINT C(J,K),
                        NEXT K
                        PRINT
            NEXT J
            END

Tidak ada komentar:

Posting Komentar