ARRAY

 ARRAY


    

  Larik adalah tipe data yang berisi beberapa data yang ditampung dalam satu variabel yang memiliki tipe data yang sama.

  Masing masing data yang tertampung dalam sebuah larik akan ditandai sebagai elemen pertama sampai ke - n.

  larik dapat dibuat beberapa dimensi, misalnya untuk menggambarkan matrix kita perlu menggunakan larik 2 dimensi.

RECORD                              :

  Tipe data rekaman di gunakan untuk menampung data yang terdiri dari beberapa tipe yang berbeda.

  Record dapat diakses (diisi) dan dibaca per elemen record dengan menyebut nama elemennya.

SET/HIMPUNAN                 :

  merupakan sebuah tipe data yang didalamnya memuat sejumlah elemen (anggota) dimana anggotanya memiliki tipe data dasar yang sama.

OPERATOR MATEMATIKA       :


IDENTIFIER                        :

  Dalam bahasa pemrograman, item data diidentifikasi menurut namanya, bukan menurut alamat lokasinya dalam memori

  Identifier akan merupakan konstanta jika ia selalu dikaitkan dengan nilai data yang sama

  Identifier akan merupakan variabel jika nilai datanya yang terkait bisa berubah

  Literal, nilai data yang tertera dalam program namun bukan sebagai identifier

DEKLARASI DATA           :

  Jenis data konstanta dan variabel harus didefinisikan dalam program sehingga :

       operasi yang tepat dapat dijalankan pada nilai data dan

      Jumlah ruang penyimpanan yang tepat bisa ditentukan

  Statement untuk mendefinisikan jenis data disebut declarative statement

  Beberapa bahasa pemrograman memiliki sintaks pendeklarasian yang berbeda

  Beberapa contoh program (pendeklarasian data) yang akan diberikan ditulis dalam pseudo-code

CONTOH                              :

  Constants

            pi = 3.141592654

  Variables

            i, qty                            : integer

            harga_satuan               : real

            status                           : boolean

            nama                            : character(25)

 

 

VARIABEL                          :

  Adalah sebuah nama yang kita ciptakan untuk menyimpan nilai suatu data.

  Data yang disimpan dalam variable dapat digunakan secara berulang-ulang untuk proses selanjutnya.

  Dalam pemberian nama variabel, tidak boleh menggunakan spasi atau karakter-karakter khusus.

  Tidak boleh diawali dengan angka.

  Tidak boleh menggunakan keyword java

CONTOH VARIABEL        :

  Variabel luas yang digunakan untuk menyimpan data luas lingkaran.

  Variabel keliling untuk menyimpan data keliling lingkaran.

  Bila sebuah variabel bertipe integer maka variabel tersebut memiliki nilai berjenis bilangan bulat.

  Pengisian nilai variabel dengan tipe data yang berbeda dengan jenis data yang sudah ditentukan akan menimbulkan error.

  Dalam menentukan tipe data dari sebuah variabel perlu memperhatikan kemungkinan besarnya nilai yang akan disimpan dalam variabel tersebut agar diperoleh hasil yang benar.

KOMPONEN DATA           :

-          Character                     - Record                      - Database

-          Field                            - File

 

CHARACTER                      :

  merupakan bagian data yang terkecil, dapat berupa karakter numerik, huruf ataupun karakter-karakter khusus yang membentuk suatu item data / field.

FIELD                                    :

  merepresentasikan suatu atribut dari record yang menunjukkan suatu item dari data, seperti misalnya nama, alamat dan lain sebagainya. Kumpulan dari field membentuk suatu record.

      field name: harus diberi nama untuk membedakan field yang satu dengan lainnya

      field representation: tipe field (karakter, teks, tanggal, angka, dsb), lebar field (ruang maksimum yang dapat diisi dengan karakter-karakter data).

      field value: isi dari field untuk masing-masing record.

 

RECORD                              :

  Kumpulan dari field membentuk suatu record.

  Record menggambarkan suatu unit data individu yang tertentu. Kumpulan dari record membentuk suatu file. Misalnya file personalia, tiap-tiap record dapat mewakili data tiap-tiap karyawan.

FILE                                       :

  File terdiri dari record-record yang menggambarkan satu kesatuan data yang sejenis. Misalnya file mata pelajaran berisi data tentang semua mata pelajaran yang ada.

 ARRAY DIMENSI 1 & 2

*      Array / Larik : Struktur Data Sederhana yang dapat didefinisikan sebagai pemesanan alokasi memory sementara pada komputer.

*      Array dapat didefinisikan sebagai suatu himpunan hingga  elemen yang terurut dan homogen.

*      Terurut : Dapat diartikan bahwa elemen tersebut dapat diidentifikasi sebagai elemen pertama, elemen kedua dan seterusnya sampai elemen ke-n.

*      Homogen : Adalah bahwa setiap elemen dari  sebuah Array tertentu haruslah mempunyai type data yang sama.

*      Sebuah Array dapat mempuyai elemen yang seluruhya berupa integer atau character atau String bahkan dapat pula terjadi suatu Array mempunyai elemen berupa Array.

 

Karakteristik Array :

1.      Mempunyai batasan dari pemesanan alokasi memory (bersifat statis)

2.      Mempunyai type data sama (bersifat homogen)

3.      Dapat diakses secara acak

 

3 hal yang harus diketahui dalam mendeklarasikan array :

a.       Type data array

b.      Nama variabel array

c.       Subskrip / index array

 

 

 

 

 

ARRAY DIMENSI SATU (One Dimensional Array)

Dapat disebut juga dengan istilah vektor yang menggambarkan data dalam suatu urutan

                Deklarasi :  Type_Data Nama_Variabel [index]

                Misalnya :   int A[5];

Penggambaran secara Logika :


Rumus menentukan jumlah elemen dalam Array :

n 
 
p (Elemen Array)
  i=1

p         = Perkalian dari elemen sebelumnya  (untuk array dimensi dua & tiga)

Contoh :

Suatu Array A dideklarasikan sbb :

int A[10]; maka jumlah elemen Array dimensi satu tersebut adalah   =   10

PEMETAAN (MAPPING) ARRAY DIMENSI SATU KE STORAGE

Rumus :  @A[i] = B  + (i – 1) * L

Dimana   : @A[i]  : Posisi Array yg dicari
                          B :  Posisi awal index di memory komputer
                           i  : Subkrip atau indeks array yg dicari
                          L  : Ukuran / Besar memory suatu type data
Contoh :

Suatu  Array A dideklarasikan sebagai berikut :

int A[5]; dengan alamat awal index berada di 0011 (H)

dan ukuran memory type data integer = 2 

Tentukan berapa alamat array A[3] ?

Jawab :

Rumus : @A[i] = B  + (i – 1) * L

 

Diketahui :                                                                                         

@A[i]  =  A[3]

      B   =  0011 (H)

       i    =  3

       L   =  2

Penyelesaian :

A[3]     = 0011(H) + (3 – 1) * 2

            = 0011(H) + 4 (D) 

            = 0011(H) + 4 (H)

            = 0015(H)

0         1          2         3          4

A[1] A[2] A[3] A[4] A[5]

    

0011 0013 0015 0017 0019

KONVERSI BILANGAN

1.      Decimal adalah bilangan berbasis sepuluh yang terdiri dari 0,1,2,3,4,5,6,7,8, dan 9

2.      Hexadecimal adalah bilangan berbasis enam belas yang terdiri dari 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, dan F

Contoh Konversi Bilangan :


Contoh Konversi antar Bilangan

·         Konversi Bilangan Decimal ke Hexadecimal

Contoh 254 (10) =……. (16)

 

Caranya dengan membagi bilangan tersebut dengan enam belas sampai bilangan tersebut tidak bisa lagi dibagi enam belas (kurang dari enam belas) dengan mencatat setiap sisa pembagian.

 

254 : 16 = 15 sisa 14 atau E (lihat tabel di atas)

15 : 15 =        sisa 15 atau F (lihat table di atas)

Jadi 254 (10) =FE (16) diurutkan dari sisa pembagian terakhir

 

Contoh Penerapan Array Dimensi 1 pada Program C++

%x adalah Hexadecimal

2. Array Dimensi Dua (Two Dimensional Array)

Deklarasi : Type_Data_Nama Variabel [index1] [index2];

Misal : int A [3][2]

Menentukan jumlah elemen dalam Array dimensi dua :

n

p (Elemen array)

i=1

p = perkalian dari elemen sebelumnya (untuk array dimensi dua dan tiga)

Contoh :

Suatu Array x dideklarasikan sbb :

 Maka jumlah elemen Array dimensi dua tersebut adalah : (4)*(3) = 12

·         PEMETAAN (MAPPING)

·         ARRAY DIMENSI DUA KE STORAGE

Terbagi dua cara pandang (representasi) yang berbeda :                   

1.      Secara Kolom per Kolom (Coloumn Major Order/CMO)

@M[i][j] = M[0][0] + {( j – 1) * K + (I – 1)} * L

2.      Secara Baris per Baris (Row Major Order/RMO)

@M[i][j] = M[0][0] + {(I – 1) * N + (j – 1)} * L

Keterangan :

@M[i][j] = Posisi Array yang dicari, M[0][0] = Posisi alamat awal index array, i = Baris, j = kolom, L = ukuran memori type data, K = banyaknya elemen per kolom, N =  banyaknya elemen per baris

 

Misal : int M[3][2];

(Array dengan 3 baris dan 2 kolom)

Berdasarkan Cara pandang :

1.      Kolom Per Baris (Row Major Order / RMO)



 
Jumlah elemen per baris = 2

2.      Baris per Kolom (Coloummn Major Order/CMO)



Jumlah elemen per kolom = 3

Contoh Pemetaan :

Suatu Array X dideklarasikan sebagai berikut :

Float X[4][3], dengan alamat index X[0][0] berada di 0011(H)  dan ukuran tipe data float = 4

 

Tentukan berapa alamat array X[3][2] berdasarkan cara pandang baris dan kolom?

Penyelesaian :

Secara Baris per Baris (Row Major Order/RMO)

@M[i][j] = @M[0][0] + {(i - 1) * N + (j - 1)} * L

              X[3][2] = 0011(H) + {(3 – 1) * 3 + (2 – 1)} * 4

                          = 0011(H) + 28 (D)                  1C (H)

                          = 0011(H) + 1C (H) 

                          = 002D(H)     

Secara Kolom per Kolom (Coloumn Major Order/CMO)

@M[i][j] = @M[0][0] + {(j - 1) * K + (i - 1)} * L

              X[3][2] = 0011(H) + {(2 – 1) * 4 + (3 – 1)} * 4

                          = 0011(H) + 24 (D)               18 (H)

                          = 0011(H) + 18 (H) 

                          = 0029(H)

1.    Array Dimensi Tiga (Three Dimensional Array)

Digunakan untuk mengelola data dalam bentuk 3 dimensi atau tiga sisi

Deklarasi :

Type_Data_Nama Variabel [index1][index2][index3];

Misal : int A [3][4][2];

Menentukan jumlah elemen dalam Array dimensi 3

n

p (index array)

i=1

p = Perkalian dari statemen sebelumnya 

Contoh :

Suatu Array X dideklarasikan sbb :

Int A[3][4][2]; maka jumlah elemen Array dimensi tiga tersebut adalah :

(3)*(4)*(2) = 24

 

Rumus :

@M[m][n][p]  = M[0][0][0] + {((m-1) *(jum.elemen2 * jum.elemen3)) + ((n-1)*(jum.elemen 3)) +  ((p-1)}* L

 

Contoh :

Suatu  Array A dideklarasikan sebagai berikut :

int A [2][4][3], dengan alamat awal index A[0][0][0] berada di 0011(H) dan ukuran type data int = 2  Tentukan berapa alamat array di A[2][3][2] ?

 

Contoh Pemetaan :

1.      Tentukan jumlah elemen array A [2][4][3]

      =  (2) * (4) * (3)                                 =  24

2.      @M[m][n][p]  = M[0][0][0] + {((m-1) *(jum.elemen2 *                      jum.elemen3)) + ((n-1)*(jum.elemen 3)) + ((p-1)}* L

   A[2][3][2] = 0011(H) + {((2–1) * 4 * 3) + ((3-1) * 3) +

                              (2-1)} * 2

                          = 0011(H) + {12 + 6 + 1 } * 2

                          = 0011(H) + 38 (D)       26 (H)

                          = 0011(H) + 26 (H) 

                          = 0037(H)                     

 Tampilan Program



Komentar

Postingan populer dari blog ini

STACK

QUEUE