Array 1 Dimensi Pascal
Contoh array yang telah kita pelajari pada tutorial sebelumnya adalah array 1 dimensi, dimana setiap element array hanya terdiri satu ‘lapis’, seperti contoh berikut:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
| program tipe_array; uses crt; var nilai: array [ 0..2 ] of integer ; begin clrscr; nilai[ 0 ]:= 10 ; nilai[ 1 ]:= 20 ; nilai[ 2 ]:= 30 ; writeln ( 'nilai1: ' ,nilai[ 0 ]); writeln ( 'nilai2: ' ,nilai[ 1 ]); writeln ( 'nilai3: ' ,nilai[ 2 ]); readln; end . |
Maksud dari 1 dimensi disini adalah, setiap element array dibahas dengan 1 index, sepertinilai[0], nilai[1] dan nilai[2].
Array 2 Dimensi Pascal
Untuk penggunaan yang lebih rumit, array 1 dimensi tidak cocok lagi. Sebagai contoh, di dalam matematika kita menggunakan grafik/diagram kartesius yang titik koordinatnya menggunakan komposisi sumbu x dan sumbu y. Sebagai contoh A(3,4) berarti titik A berada di posisi 3 pada sumbu x, dan 4 pada sumbu y.
Untuk mempermudah dalam pembuatan program yang melibatkan 2 sumbu atau 2 dimensi ini, kita bisa menggunakan array 2 dimensi.
Cara penulisan array 2 dimensi adalah dengan menuliskan dua angka (dua jangkauan) sewaktu deklarasi array. Berikut contohnya:
1
2
| var nilai: array [ 0..1 , 0..2 ] of integer ; |
Kode diatas berarti saya membuat variabel ‘nilai’ sebagai array 2 dimensi. Dimana untuk dimensi pertama berisi 0 dan 1, sedangkan di dimensi kedua berisi 0, 1 dan 2. Total, variabel ‘nilai’ berisi 6 element (hasil dari 2 * 3).
Cara mengakses element pada array 2 dimensi ini menggunakan tanda koma sebagai pemisah, seperti: nilai[0,2] atau nilai[1,1].
Contoh berikut akan memperjelas cara penggunaanya:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
| program tipe_array; uses crt; var nilai: array [ 0..1 , 0..2 ] of integer ; begin clrscr; nilai[ 0 , 0 ]:= 1 ; nilai[ 0 , 1 ]:= 2 ; nilai[ 0 , 2 ]:= 3 ; nilai[ 1 , 0 ]:= 4 ; nilai[ 1 , 1 ]:= 5 ; nilai[ 1 , 2 ]:= 6 ; writeln ( 'nilai0,0: ' ,nilai[ 0 , 0 ]); writeln ( 'nilai0,1: ' ,nilai[ 0 , 1 ]); writeln ( 'nilai0,2: ' ,nilai[ 0 , 2 ]); writeln ( 'nilai1,0: ' ,nilai[ 1 , 0 ]); writeln ( 'nilai1,1: ' ,nilai[ 1 , 1 ]); writeln ( 'nilai1,2: ' ,nilai[ 1 , 2 ]); readln; end . |
Silahkan anda pelajari sejenak kode diatas, baik cara pembuatan array 2 dimensi maupun cara mengakses tiap-tiap elemennya. Menggunakan array 2 dimensi ini akan memudahkan kita untuk membuat kode program yang lebih kompleks.
Contoh lain yang sering menggunakan array 2 dimensi adalah untuk membuat struktur matriks. Berikut contohnya:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
| program tipe_array; uses crt; var nilai: array [ 0..1 , 0..1 ] of integer ; begin clrscr; nilai[ 0 , 0 ]:= 1 ; nilai[ 0 , 1 ]:= 2 ; nilai[ 1 , 0 ]:= 4 ; nilai[ 1 , 1 ]:= 5 ; write (nilai[ 0 , 0 ], ' ' ); writeln (nilai[ 0 , 1 ]); write (nilai[ 1 , 0 ], ' ' ); writeln (nilai[ 1 , 1 ]); readln; end . |
Contoh kali ini hampir mirip dengan contoh kode program pascal sebelumnya, tapi saya membatasi dengan element 2×2 (perhatikan cara pendeklarasikan variabel ‘nilai’). Ketika menampilkan hasil array, saya menyusunnya agar sesuai dengan bentuk matriks 2×2. Ini didapat dengan perpaduan perintah write dan writeln.
Sebagai latihan, dapatkah anda membuat struktur matriks 3×3?
Array 3 Dimensi Pascal
Secara teori, dimensi untuk array di dalam pascal tidak terbatas. Kita juga bisa membuat array 3 dimensi. Ini diperlukan jika koordinat cartesius terdiri dari sumbu x, sumbu y, dan sumbu z. Cara pembuatannya juga hampir sama.
Sebagai contoh, jika saya ingin membuat array 3 dimensi 2x3x4 bisa ditulis sebagai:
1
2
| var nilai: array [ 0..1 , 0..2 , 0..3 ] of integer ; |
Sampai disini, saya yakin anda sudah paham maksud kode diatas. Cara pengaksesannya pun cukup dengan menambahkan dimensi ketiga di nomor index, seperti nilai[1,2,3] atau nilai[0,0,1]. Berikut contohnya:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
| program tipe_array; uses crt; var nilai: array [ 0..1 , 0..2 , 0..3 ] of integer ; begin clrscr; nilai[ 0 , 0 , 2 ]:= 2 ; writeln (nilai[ 0 , 0 , 2 ]); nilai[ 1 , 2 , 3 ]:= 999 ; writeln (nilai[ 1 , 2 , 3 ]); readln; end . |
Setelah mempelajari cara pembuatan array 2 dimensi (dan 3 dimensi), dalam tutorial pascal berikutnya saya akan membahas cara pembuatan array dinamis (Dynamic Arrays).
0 komentar:
Posting Komentar
Silahkan Isikan Komentar anda karena komentar anda bisa membantu saya !!!