Sponsor

Sunday 16 June 2013

Makalah Array

silahkan klik link ini :
http://adf.ly/Sr9lj
untuk file power point

silahkan klik link ini :
http://adf.ly/SrA2w
untuk makalah array
Array adalah suatu himpunan hingga elemen, terurut dan homogen.Terurut adalah elemen tersebut dapat diidentifikasikan sebagai elemen pertama,kedua, sampai dengan elemen ke-n.
Homogen adalah bahwa setiap elemen dari sebuah array tertentu haruslahmempunyai tipe data yang sama.Pengertian array telah kita kenal sebelumnya dalam Matematika, yanglebih dikenal sebagai matriks atau tabel. Vektor merupakan array yang palingsederhana.

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

Jenis Array (yang akan dipelajari) adalah :
a. Array Dimensi Satu (One Dimensional Array)
b. Array Dimensi Dua (Two Dimensional Array)
c. Array Dimensi Tiga (Thee Dimensional Array)


Array Dimensi Satu (One Dimensional Array)
Array 1 dimensi adalah sebuah variabel yang menyimpan sekumpulan data yang memiliki tipe sama dan elemen yang akan diakses hanya melalui 1 indekx atau subskrip.
Array dalam bahasa Indonesia adalah indeks, maka variabel array adalah variabel yang mempunyai indeks. Sehingga penulisannya adalah var(indeks). Array  dapat disebut juga dengan istilah vektor yang menggambarkan data dalam suatu urutan. 

Deklarasi : Type_Data Nama_Variabel [index]
Misalnya : int A[5];

PEMETAAN (MAPPING) ARRAY DIMENSI SATU KE STORAGE

Rumus: @A[ i ] = B + ( I – 1 ) * L
Dimana:
            @A [ i ] : Posisi array yang dicai
            B +        : Posisi awal index dimemory computer
            ( I – 1 )              : Subkrip atau indeks array yang 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] ?
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)


ARRAY DIMENSI DUA (Two Dimensional Array)

Sering digunakan dalam menterjemahkan matriks pada pemrograman.

Deklarasi : Type_Data Nama_Variabel [Index1] [index2];
Misal : int A[3][2];

0
1
0


1


2



Contoh aplikasi untuk Array dimensi 2 adalah seperti
program input IPK mahasiswa dengan hasil output
seperti berikut :
Nama Mahasiswa
IPK
Doni
3,50
Imam
3,89
Novi
2,85
Randy
3,54
Redo
2,48
Rina
3,36


PEMETAAN  (MAPPING)  ARRAY  DIMENSI  DUA  KE STORAGE
Terbagi Dua cara pandang (representasi) yang berbeda :
1. Secara Kolom Per Kolom (Coloumn Major Order/CMO) 
 Rumus: @M [i][j] = M[0][0] + {(j – 1) * K + (I – 1)} * L

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

Posisi awal array yang dicari
Posisi alamat awal index array
Kolom
Banyaknya elemen per kolom
Baris
Ukuran memory type data


2. Secara Baris Per Baris (Row Major Order / RMO)
  Rumus : @M[i][j] = M[0][0] + {(i - 1) * N + (j - 1)} * L
@M[i][j] 
=M[0][0]
+
{ ( i  - 1)
*  N
+
( - 1)}
*  L
Posisi awal array yang dicari
Posisi alamat awal index array
Baris
Banyaknya elemen per baris
Kolom
Ukuran memory type data
Penggambaran secara logika

0
1
0


1


2


Kolom per kolom = M[0,0] M[1,0] M[2,0] M[0,1] M[1,1] M[2,1]
Baris per baris      = M[0,0] M[0,1] M[1,0] M[1,1] M[2,0] M[2,1]
Contoh soal pemetaan:

Suatu Array X dideklarasikan sebagai berikut :
Float X[3][4], dengan alamat index X[0][0] berada di 0011(H)
dan ukuran type data float/real = 4

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


0
1
2
0
0011(H)


1



2

?

3





Penyelesaian:
Secara baris per baris
@M[i][j] = M[0][0] + { (i-1) * byk elmn baris + (j-1)} *uk. mmry type data
  X[3][2] = 0011(H) +{ (3-1) *3 + (2-1)*4
               = ...


Secara kolom per kolom
@M[i][j] = M[0][0] + { (j-1) * byk elmn kolom + (i-1)} *uk. mmry type data

  X[3][2] = 0011(H) + { (2-1)*4 + (3-1)*4
                = ...


No comments: