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 !!!