Rabu, 23 Februari 2011

A R R A Y dan RECORD

ARRAY:


Sebuah array dapat dikatakan sebagai suatu himpunan terurut dengan elemen-elemen homogen. Terurut, dimaksudkan bahwa elemen pertama, elemen kedua, dst masing-masing dapat diidentifikasi. Sedangkan homogen berarti masing-masing elemen tersebut mempunyai tipe data yang sama.

    Array dapat dikelompokkan atas 2 bagian, yaitu :
      1. Array satu dimensi.
      2. Array multi dimensi.

Sifat Array:
 
Array merupakan struktur data yang statis, yaitu
jumlah elemen yang ada harus ditentukan
terlebih dahulu dan tak bisa di ubah saat
program berjalan. Untuk menyatakan array
dalam PASCAL kita harus terlebih dahulu:
Mendefinisikan jumlah elemen array
Contoh. const N=10;
type
A= array [1..N] of integer;


ARRAY SATU DIMENSI
      Bentuk array yang paling sederhana adalah array satu dimensi. Array jenis ini dapat dianggap sebagai sebuah vektor. Suatu array A berdimensi satu dengan N buah elemen, secara fisik dapat digambarkan sebagai berikut :

A(1)
A(2)
.....
A(I)
.....
A(n)

Indeks dari elemen suatu array menyatakan posisinya dalam urutan secara umum suatu array A berdimensi satu dengan elemen berjenis data T yang mempunyai indeks dari L s/d U dituliskan sbb:

            A(L:U) = {A(I)}
           
            Untuk I = L, L+1, L+2, ................., U-1, U,
            dimana masing-masing  A(I) berjenis data T.

L disebut sebagai batas bawah dari indeks A dan U sebagai batas atas dari A.
Jumlah elemen dalam suatu array disebut sebagai range.
Range dari array A(L:U) adalah U - L + 1.
Range dari array B(1:N) adalah N - l + 1= N.






ARRAY MULTI DIMENSI
      Array dua dimensi adalah salah satu contoh dari array jenis multi dimensi (dimensi banyak). Array ini elemen-elemennya merupakan array pula. Bentuk yang dianggap dapat mewakili array dua dimensi ini adalah matriks.  Suatu array B yang terdiri atas M elemen dimana masing-masing elemennya berupa array dengan N elemen, dapat digambarkan sebagai suatu tabel MxN, dengan bentuk sbb:   


1
2
3
...
J
...
N
1







2







3







...







I







...







M









Array ini dituliskan :             B(1:M,1:N) = {B(I,J)},
                                                Untuk  I = 1,2,...,M
                                                            J = 1,2,...,N
Jumlah elemen (range) dari array B ini adalah M x N.

Secara umum, array 2 dimensi B dengan batas bawah indeks pertama L1, batas atas indeks pertama U1, batas bawah indeks kedua L2 batas atas indeks kedua U2, dituliskan:

            B(L1 : U1, L2 : U2) = {B(I,J)}
            Untuk L1 < I < U1 dan L2 < J < U2

Jumlah elemen baris dari array B adalah : ( U2 - L2 + 1 )
Jumlah elemen kolom dari array B adalah : ( U1 - L1 + 1)
Jumlah total elemen array B adalah : (U2 - L2 + 1 )(U1 - L1 + 1)

RECORD

   Record adalah himpunan dari elemen-elemen yang heterogen.
      Heterogen adalah elemen-elemennya dapat mempunyai tipe data yang berbeda.

      ELEMENTARY ITEM adalah suatu field yang tidak mempunyai subfield.

      GROUP ITEM adalah suatu field yang mempunyai subfield.

      TUPEL adalah gabungan atribut yang menjadi suatu informasi dari proses basis                              data.

      Contoh RECORD :

      PEGAWAI
Job Tittle
Emp. No
Pay Rate
Name
Telp. No
Analys
00012724
1.000.000
Bob Geldof
7801725
Programmer
00023451
   800.000
Ceu Rika
7521475
( String(20) )
( String(8) )
( Real(9,2) )
( String(25) )
( String(7) )

      Record-record yang tipenya sama : FILE.
      Untuk menyatakan suatu data dalam record yang mempunyai identifikasi yang khusus, maka harus punya 1 field khusus yang disebut KEY (kunci field).

  DEKLARASI RECORD DALAM BAHASA PEMROGRAMAN

  PROGRAM DALAM COBOL
      DATA DIVISION.
      01  PEGAWAI.
            02  JOB_TITTLE       PIC X(20).
            02  EMP_NO             PIC X(8).
            02  PAY_RATE         PIC 9(2) V 9(2).
            02  NAME                              PIC X(25).
            02  TELP_NO                        PIC X(7).

  PROGRAM DALAM PASCAL
      Type
            Pegawai = Record;
                                    Job_Tittle : String[20];
                                    Emp_No  : String[8];
                                    Pay_Rate : Real;
                                    Name       : String[25];
                                    Telp_No   : String[7];
                             End;          




Tidak ada komentar:

Posting Komentar