Dalam tutorial sebelumnya kita telah membahas pengertian dan contoh kode program dari tipe data array dalam bahasa C. Untuk mengolah data yang lebih kompleks, array ini bisa dibuat menjadi 2 dimensi atau lebih. Inilah yang akan kita bahas dalam tutorial belajar bahasa pemrograman C di Duniailkom kali ini.
Pengertian Array 2 Dimensi
Array dua dimensi adalah sebutan untuk array yang penomoran index-nya menggunakan 2 buah angka. Analogi yang sering dipakai seperti titik koordinat dalam diagram kartesius.
Diagram kartesius merupakan diagram yang biasa kita pakai untuk membuat grafik. Disini terdapat sumbu X dan sumbu Y. Sebuah titik dalam diagram kartesius ini harus disebut secara berpasangan, seperti (2,3) atau (-3, 1).
Analogi lain adalah matriks. Dalam matematika, matrik terdiri dari kolom dan baris. Kembali, untuk menentukan nilai dari sebuah matriks, kita harus sebut secara berpasangan seperti baris 1 kolom 2, atau baris 3 kolom 1. Konsep seperti inilah yang menjadi dasar dari array 2 dimensi.
Untuk membuat array 2 dimensi di dalam bahasa C, kita membuat 2 kali tanda kurung siku setelah nama variabel, seperti contoh berikut:
int bilangan[2][2];
Baris diatas akan membuat array 2 dimensi dengan nama variabel: bilangan. Variabel bilangan ini akan berisi 4 element (2 x 2). Atau jika diibaratkan sebagai matriks, disini kita membuat matriks 2 x 2.
Untuk mengakses setiap element array, penulisan index juga harus ditulis 2 kali, seperti contoh berikut:
bilangan[0][0] = 100;
bilangan[0][1] = 101;
bilangan[1][0] = 110;
bilangan[1][1] = 111;
Kita akan lihat contoh praktek dari array 2 dimensi ini sesaat lagi.
Contoh Kode Program Array 2 Dimensi Bahasa C
Berikut contoh kode program pertama dari pembuatan array 2 dimensi di dalam bahasa C:
#include
int main(void)
{
int bilangan[2][2];
bilangan[0][0] = 100;
bilangan[0][1] = 101;
bilangan[1][0] = 110;
bilangan[1][1] = 111;
printf("Isi array bilangan: \n");
printf("%d, %d \n",bilangan[0][0],bilangan[0][1]);
printf("%d, %d \n",bilangan[1][0],bilangan[1][1]);
return 0;
}
Di awal kode program, saya membuat array bilangan dengan perintah int bilangan[2][2];. Artinya, array bilangan adalah sebuah array 2 dimensi dengan 4 element. Proses pengisian setiap element array dilakukan setelahnya, kemudian ditampilkan dengan perintah printf.
Pengisian element array 2 dimensi juga bisa dilakukan pada saat array itu di definisikan, seperti contoh berikut:
#include
int main(void)
{
int matrix[2][3] = {{1,2,3},{7,8,9}};
printf("Isi array matrix: \n");
printf("%d %d %d \n", matrix[0][0], matrix[0][1], matrix[0][2]);
printf("%d %d %d \n", matrix[1][0], matrix[1][1], matrix[1][2]);
return 0;
}
Kali ini saya membuat sebuah array matrix dengan perintah int matrix[2][3] = {{1,2,3},{7,8,9}};. Perintah ini akan membuat array 2 dimensi dengan total 6 element (hasil dari 2*3). Selain itu proses pengisian nilai juga dilakukan langsung pada saat pendefinisian array.
Tanda kurung kurawal sebagai pemisah nilai array bersifat opsional dan boleh tidak ditulis. Saya juga bisa mengisi array tersebut dengan perintah berikut:
int matrix[2][3] = {1,2,3,7,8,9};
Hanya saja penggunaan tanda kurung kurawal akan mempermudah peletakan posisi dari setiap element array.
Pengertian Array Multi Dimensi
Tidak cukup dengan array 2 dimensi, kita juga bisa membuat array 3 dimensi bahkan lebih. Contoh penggunaan dari array 3 dimensi adalah seperti diagram kartesius 3 dimensi (dimensi ruang) yang butuh sumbu x (lebar), y (tinggi), dan z (kedalaman).
Cara pembuatan array 3 dimensi cukup mudah, kita tinggal menulis 3 kali tanda kurung siku setelah penulisan nama array:
int matrix[2][3][4]
Bagaimana dengan array 4 dimensi? Tidak masalah:
int matrix[2][3][4][5]
Kompleksitas array akan menjadi bertingkat jika sudah menggunakan multi dimensi. Sebagai contoh, baris diatas akan membuat sebuah array 4 dimensi yang beranggotakan 120 element!
Contoh Kode Program Array 3 Dimensi Bahasa C
Sebagai contoh dari konsep array multi dimensi, saya akan membuat sebuah array 3 dimensi. Berikut contoh kode programnya:
#include
int main(void)
{
int matrix[2][3][4] =
{
{ {7, 4, 12, 3}, {-9, 29, 3, 11}, {6, 34, 23, 20} },
{ {6, 15, 1, 5}, {17, 8, -3, 15}, {99, -1, 44, 9} }
};
printf("Isi matrix[0][0][0]: %d \n",matrix[0][0][0]);
printf("Isi matrix[0][1][0]: %d \n",matrix[0][1][0]);
printf("Isi matrix[1][1][3]: %d \n",matrix[1][1][3]);
printf("Isi matrix[1][2][3]: %d \n",matrix[1][2][3]);
return 0;
}
Disini saya membuat array matriks 3 dimensi dengan perintah int matrix[2][3][4], artinya array ini akan menampung 2*3*4 = 24 element, mulai dari element [0][0][0], [0][0][1], [0][0][2] hingga [1][2][3]. Ingat, penulisan nomor index dimulai dari 0.
Karena jumlah element array ini cukup banyak, saya hanya menampilkan beberapa nilai saja menggunakan perintah printf. Meskipun begitu saya yakin anda bisa menampilkan seluruh nilai element array ini. Caranya, cukup dengan mengubah nomor index.
Array 2 dimensi dalam bentuk matriks sangat sering dipakai untuk latihan logika. Soal-soal olimpiade komputer tidak jarang menggunakan array 2 dimensi seperti ini, dimana kita disuruh untuk menebak berapa hasil akhir array setelah serangkaian proses tertentu.
Selanjutnya, kita akan bahas tipe data String dalam bahasa C, yang tidak lain adalah array dari tipe data char.
Sumber wk.com
EmoticonEmoticon