Array adalah sebuah variabel yang menyimpan sekumpulan data yang memiliki tipe sama atau Array juga dapat disebut sebagai kumpulan dari nilai-nilai data bertipe sama dalam urutan tertentu yang memakai sebuah nama yang sama.
Setiap data tersebut menempati lokasi atau alamat memori yang berbeda-beda dan selanjutnya disebut dengan elemen array. Elemen array dapat diakses melalui index yang terdapat di dalamnya, untuk diingat bahwa index array selalu dimulai dari 0 (bukan 1).
Array 2 Dimensi
Array dua dimensi adalah array yang terdiri dari n buah baris dan m buah kolom, atau array dua dimensi juga biasa disebut sebagai array yang mempunyai dua subskrip, yaitu baris dan kolom. Bentuknya dapat dibayangkan seperti matriks atau tabel, dimana index pertama menunjukan baris dan index kedua menunjukan kolom.
Berikut gambar yang dapat mengilustrasikan sebuah array 2 dimensi :
Pada ilustrasi array dua dimensi diatas, dimisalkan terdapat sebuah array 2 dimensi dengan nama “jimmy“, array jimmy memiliki jumlah elemen baris sebanyak 3 dan jumlah elemen kolom sebanyak 5 dan bertipe data int (Array of Integers).
Cara Pendeklarasian Array 2 Dimensi
Untuk mendeklarasikan sebuah array 2 dimensi dalam C++, harus menggunakan tanda [ ] (bracket). Adapun bentuk umum dari pendeklarasian array dua dimensi adalah sebagai berikut:
tipe_data nama_array [jumlah_elemen_baris] [jumlah_elemen_kolom];
Contoh :
int jimmy [3][5];
Untuk pemebrian nilai (inisialisasi) terhadap masing-masing elemen sama saja dengan inisialisai pada array 1 dimensi, bedanya dijumlah indexnya saja.
Contoh :
jimmy[0][2] = 3; merupakan instruksi untuk memberikan nilai 3 ke array jimmy untuk indeks pertama = 0 dan indeks kedua =2.
Seandainya array jimmy akan kita beri nilai saat pendeklarasian (inisialisasi), maka contoh penulisannya dapat ditulis sebagai berikut :
int jimmy [3][5] = {{1,2,3,4,5},{2,4,6,8,10},{3,6,9,12,15}};
atau supaya lebih rapih dalam penulisan bisa seperti berikut :
int jimmy [3][5] = {
{1,2,3,4,5},
{2,4,6,8,10},
{3,6,9,12,15}
};
Dari pendeklarasian sekaligus inisialisasi array jimmy diatas, dapat diartikan bahwa kita telah memesan tempat pada memori komputer sebanyak 15 tempat, dengan index dari jimmy[0][0] sampai jimmy[2][4], dimana nilai-nilai akan dimasukkan ke elemen array secara berturut-turut, mulai dari jimmy[0][0] akan diisi dengan nilai 1 sampai jimmy[2][4] yang di isi dengan nilai 15.
Gambar berikut memberikan ilustrasi untuk memudahkan pemahaman tentang array berdimensi dua.
Cara Akses Elemen Array 2 Dimensi
Array jimmy diatas dapat diakses dalam bentuk:
jimmy[indeks pertama][indeks kedua];
contoh :
cout<<jimmy[2][0]);
merupakan perintah untuk menampilkan elemen array yang memiliki indeks pertama = 2 dan indeks kedua = 0.
Cara yang digunakan untuk mengakses elemen array 2 dimensi adalah dengan menuliskan index baris dan kolom nya. Misalnya pada array jimmy di atas kita ingin mengakses nilai 3 yang terdapat pada baris ke-1 (index 0) dan kolom ke-3 (index 2), kemudian menampung nilai tersebut kedalam sebuah variabel yang bertipe int (misal int A), maka kita perlu menuliskan kode programnya seperti berikut ini :
A = jimmy[0][2];
Perlu ingat meskipun array jimmy memiliki jumlah elemen baris sebanyak 3 dan jumlah elemen kolom sebanyak 5 atau dideklarasikan sebagai berikut : int jimmy[3][5]; , namun karena index array selalu dimulai dari 0 maka untuk mengakses elemen terakhir dari array jimmy, kita dapat mengaksesnya dengan menuliskan jimmy[2][4] bukan jimmy[3][5].
Berikut ini adalah contoh program sederhana menampilkan matrik ordo 3×2, dimana program ini menggunakan Array 2 Dimensi :
#include <iostream>
using namespace std;
int main()
{
// Deklarasi dan inisialisasi array dua dimensi
// Dengan jumlah elemen baris = 3 dan jumlah elemen kolom = 2
int A[3][2] = {{1,2},{3,4},{5,6}};
// Mendeklarasi variabel untuk Index perulangan
int i,j;
cout<<"\t==============================";
cout<<"\n\t=== Tampil Matrik Ordo 3x2 ===\n";
cout<<"\t==============================\n\n";
// Menampilkan array A
cout<<"\nMenampilkan matrikcontoh\n";
for(i=0;i<3;i++)
{
for(j=0;j<2;j++)
{
cout<<A[i][j]<<" ";
}
cout<<endl;
}
return 0;
}
Hasilnya :
Contoh program penjumlahan 2 buah matrik ordo 3×2, menggunakan Array Dua Dimensi :
#include <iostream>
using namespace std;
int main()
{
//Deklarasi array dua dimensi
//Dengan jumlah elemen baris = 3 dan jumlah elemen kolom = 2
int A[3][2];
int B[3][2] = {{1,2},{3,4},{5,6}};
int C[3][2];
//Mendeklarasi variabel untukIndeks perulangan
int i,j;
cout<<"\t===============================";
cout<<"\n\t= Penjumlahan Matrik Ordo 3x2 =\n";
cout<<"\t===============================\n\n";
//Mengisi nilai kedalam Elemen-elemen array matrik A
//Sedangkan elemen-elemen array matrik B sudah diisi saat deklarasi (inisialisasi)
for(i=0;i<3;i++)
{
for(j=0;j<2;j++)
{
cout<<"A ["<<i<<"] ["<<j<<"] = ";
cin>>A[i][j];
}
}
cout<<endl;
//Melakukan penjumlahan array matrik A dan matrik B
//Dan menyimpan hasilnya ke array matrik C
for(i=0;i<3;i++)
{
for(j=0;j<2;j++)
{
C[i][j]=A[i][j] + B[i][j];
}
}
//Menampilkan matrik A
cout<<"\nMatrik A\n";
for(i=0;i<3;i++)
{
for(j=0;j<2;j++)
{
cout<<A[i][j]<<" ";
}
cout<<endl;
}
//Menampilkan matrik B
cout<<"\nMatrik B\n";
for(i=0;i<3;i++)
{
for(j=0;j<2;j++)
{
cout<<B[i][j]<<" ";
}
cout<<endl;
}
// Menampilkan hasil penjumlahan / matrik C (dalam bentuk matrik dengan ordo 3x2)
cout<<"\nMatrik c atau hasil\n";
for(i=0;i<3;i++)
{
for(j=0;j<2;j++)
{
cout<<C[i][j]<<" ";
}
cout<<endl;
}
system ("pause");
return 0;
}
