1 Array dan Tipe Data Bentukan

advertisement
1 Array dan Tipe Data Bentukan
Overview
Dalam dunia nyata, struktur data yang dihadapi sangat beragam dan penggunaan
variabel dengan tipe data dasar memiliki keterbatasan pada banyaknya nilai yang
dapat disimpan. Dengan menggunakan array dan tipe data bentukan, dapat
dilakukan pemodelan struktur data dengan lebih baik bahkan untuk struktur data
yang relatif kompleks.
Tujuan
1. Memahami tipe data array dan keuntungan yang dapat diberikan
2. Memahami array yang memiliki dimensi lebih dari satu
3. Dapat meng-implementasikan tipe data array dalam program
4.
Memahami cara menentukan tipe data bentukan dan menggunakannya dalam
program
1.1 Array (Larik)
Tipe data array adalah tipe data terstruktur yang merujuk kepada sebuah atau
sekumpulan elemen yang mempunyai tipe data yang sama melalui indeks. Array biasanya
disebut juga sebagai tabel, vektor atau larik.
Elemen dari array dapat diakses langsung jika dan hanya jika indeks terdefinisi (telah
ditentukan nilainya sesuai dengan domain yang didefinisikan untuk indeks tersebut).
Struktur data array disimpan dengan urutan yang sesuai dengan definisi indeks secara
kontigu (berurutan) dalam memori komputer. Karena itu indeks haruslah merupakan
suatu tipe data yang memiliki keterurutan (ada suksesor dan predesesor), misal tipe
integer dan karakter.
Dilihat dari dimensinya, array dapat dibagi menjadi Array Satu Dimensi, Array Dua Dimensi
dan Array Multi-Dimensi
1.1.1 Array Satu Dimensi
Representasi array satu dimensi
My_array =
2
4
6
...
98
100
0
1
2
...
49
50
indeks
Untuk mendeklarasikan variabel dengan tipe data array satu dimensi pada notasi
algoritma, digunakan pola sebagai berikut:
...
KAMUS DATA
Nama_variabel : array [x..y] of tipe_data
...
Keterangan:
Nilai x merupakan nilai awal indeks pada array, dan nilai y merupakan nilai akhir pada
indeks array.
Contoh :
Algoritma
...
Kamus data
arrHari : array [1..7] of string
arrJmlBulan : array [1..12] of integer
arrFrekuensi : array [‘a’..’z’] of integer
...
Mengakses data array satu dimensi:
Array satu dimensi diakses melalui indeksnya. Misal akan disiapkan array satu dimensi A
bertipe integer dengan 5 elemen yang diberi nomor indeks dari 0 sampai 4, yang dapat
diilustrasikan dengan gambar berikut:
0
1
A[0]
2
3
4
A[4]
A[1]
Karena array tersebut mempunyai nama yang sama, yaitu A, maka setiap elemen diberi
sebutan nama yang berbeda dengan memberikan nomor indeks, sehingga masingmasing menjadi: A[0], A[1], sampai dengan A[4], yang dapat dibaca dengan:
A dengan indeks 0 atau A nol
A dengan indeks 1 atau A satu dan seterusnya…
Untuk menyimpan nilai dalam array satu dimensi, dapat dilakukan dengan cara sebagai
berikut:
A[0]  4
/*simpan nilai 4 dalam array A pada indeks 0 */
A[1]  8
/*simpan nilai 8 dalam array A pada indeks 1*/
A[2]  6
/*simpan nilai 6 dalam array A pada indeks 2*/
A[3]  A[0] +A[1]
/*tambahkan nilai dalam
array A
indeks 0
dengan nilai array A indeks 1 dan simpan hasilnya pada array A indeks 3*/
A[4]  A[2]
/*isikan array A indeks 4 dengan nilai pada array A
indeks 2*/
Sehingga gambaran array A menjadi seperti berikut ini:
0
4
1
8
2
6
A[0]
A[1]
A[2]
3
12
A[3]
4
6
A[4]
Program 1.
Program 2.
1.1.2
Array Dua Dimensi
Array dua dimensi merupakan array yang terdiri dari m buah baris (row) dan n buah
kolom (column). Bentuk array semacam ini menggunakan 2 (dua) buah kelompok indeks
yang masing-masing direpresentasikan sebagai indeks baris dan kolom. Jika ingin
memasukkan atau membaca sebuah nilai pada matriks maka, harus diketahui terlebih
dahulu indeks baris dan kolomnya.
Untuk mendeklarasikan variabel dengan tipe data array dua dimensi pada notasi
algoritma, digunakan pola sebagai berikut:
...
KAMUS DATA
Nama_variabel : array [x..y,t..u] of tipe_data
...
Keterangan:
Nilai x merupakan nilai awal indeks baris pada array, dan nilai y merupakan nilai akhir
indeks baris array. Nilai t merupakan nilai awal indeks kolom pada array, dan nilai u
merupakan nilai akhir indeks kolom array.
Representasi array dua dimensi:
A[0,0]
0
1
Ada 5 kolom (0-4)
2
3
4
0
1
2
A
Ada 3 baris (0-2)
A[1,2]
A[2,4]
Gambar di atas merepresentasikan array yang terdiri dari 3 baris dan 5 kolom, dan jumlah
elemennya = 3 x 5 = 15 elemen. Karena terdiri dari baris (row) dan kolom (column), maka
array dua dimensi sering juga disebut matrix.
Mengakses data array dua dimensi:
Seperti array satu dimensi, array dua dimensi juga diakses melalui indeksnya. Contoh:
A[1,2], menunjuk pada posisi nilai array pada baris 1, kolom 2.
Untuk menyimpan nilai dalam array dua dimensi, dapat dilakukan dengan cara sebagai
berikut:
A[0,0]  2
/*simpan 2 pada array A baris 0,kolom 0*/
A[0,1]  4
/*simpan 3 pada array A baris 0,kolom 1*/
A[1,2]  8
/*simpan 5 pada array A baris 1,kolom 2*/
A[2,2]  A[0,0] + A[1,2] /*tambahkan nilai pada array A baris 0,kolom 0 dengan
nilai pada array A baris 1,kolom 2 dan simpan hasilnya
pada array A baris 2,kolom 2 */
Sehingga gambaran array A menjadi seperti berikut ini:
A[0,0]
A
0
1
2
Ada 3 baris (0-2)
Program 3
Program 4
0
2
1
4
Ada 5 kolom (0-4)
2
3
4
8
10
A[1,2]
A[2,4]
Download