Pengertian Array
Array adalah suatu variabel yang terdiri dari sekumpulan data dimana data-data tersebut mempunyai tipe data yang sama. Setiap data disimpan dalam alamat memori yang berbeda-beda dan disebut dengan elemen array. Setiap elemen mempunyai nilai indek sesuai dengan urutannya. Melalui indek inilah kita dapat mengakses data-data tersebut. Indek dari elemen array ini, baik dalam bahasa C++ maupun Java dimulai dari 0, bukan 1 seperti dalam bahasa Pascal. Array dideklarasikan dengan tanda [ ] (bracket), baik dalam bahasa C++ dan Java. Bentuk umum dari tipe data array adalah : tipe_data nama_array[jumlah_elemen]
Array berdimensi satu
Yaitu data-data akan disimpan dalam satu baris array, sehingga hanya dibutuhkan satu pernomoran indeks.
Misalkan kita ingin membuat program untuk mencari nilai rata-rata dari 5 buah data nilai yang diinputkan oleh user. Tanpa menggunakan array, maka programnya adalah sebagai berikut :
void main() {
float nilai1, nilai2, nilai3, nilai4, nilai5;
float jumlah, rata2;
cout<<“Program Menghitung Nilai Rata-rata”<<endl;
cout<<“Masukkan nilai ke 1 : “;
cin>>nilai1;
cout<<“Masukkan nilai ke 2 : “;
cin>>nilai2;
cout<<“Masukkan nilai ke 3 : “;
cin>>nilai3;
cout<<“Masukkan nilai ke 4 : “;
cin>>nilai4;
cout<<“Masukkan nilai ke 5 : “;
cin>>nilai5;
jumlah = nilai1 + nilai2 + nilai3 + nilai4 + nilai5;
rata2 = jumlah / 5;
cout<<“Nilai rata-rata adalah “<<rata2<<endl;
getch();
}
Array Berdimensi Dua
Array berdimensi dua memberikan kita kesempatan untuk menyimpan data baik dalam bentuk baris maupun dalam bentuk kolom. Oleh karena itu dibutuhkan dua buah nilai indeks.
Contoh Array Berdimensi dua
#include <iostream.h>
#include <conio.h>
int main()
{
int Nilai[4][3];
int pilih, i;
// memasukkan data ke dalam array berdimensi dua
Nilai[0][0] = 5; // nilai Nobita minggu ke 1
Nilai[0][1] = 3; // nilai Nobita minggu ke 2
Nilai[0][2] = 2; // nilai Nobita minggu ke 3
Nilai[1][0] = 72; // nilai Suneo minggu ke 1
Nilai[1][1] = 88; // nilai Suneo minggu ke 2
Nilai[1][2] = 60; // nilai Suneo minggu ke 3
Nilai[2][0] = 90; // nilai Shizuka minggu ke 1
Nilai[2][1] = 100; // nilai Shizuka minggu ke 2
Nilai[2][2] = 85; // nilai Shizuka minggu ke 3
Nilai[3][0] = 55; // nilai Giant minggu ke 1
Nilai[3][1] = 76; // nilai Giant minggu ke 2
Nilai[3][2] = 46; // nilai Giant minggu ke 3
// menampilkan nilai
while (1)
{
cout << “(0 = Nobita, 1 = Suneo, 2 = Shizuka, 3 = Giant)\n”;
cout << “Nama Siswa (masukkan kode angka) : “; cin >> pilih;
if ((pilih == 0) || (pilih == 1) || (pilih == 2) || (pilih == 3))
break; //keluar dari loop-while
}
cout << “\nNama Siswa : “;
if (pilih == 0) cout << “Nobita\n”;
if (pilih == 1) cout << “Suneo\n”;
if (pilih == 2) cout << “Shizuka\n”;
if (pilih == 3) cout << “Giant\n”;
for (i = 0; i < 3 ; i++)
{
cout << “Minggu ” << i+1 << ” : ” << Nilai[pilih][i] << “\n”;
}
getch();
return 0;
}
Output Data
(0 = Nobita, 1 = Suneo, 2 = Shizuka, 3 = Giant)
Nama Siswa (masukkan kode angka) : 2
Nama Siswa : Shizuka
Minggu 1 : 90
Minggu 2 : 100
Minggu 3 : 85
Kelebihan Array :
- Merupakan struktur penyimpanan data yang paling mudah.
- Tipe data yang mampu menampung lebih dari satu data.
- Memori ekonomis, bisa semua elemen terisi.
- Waktu akses sama setiap elemen.
- Dapat diakses secara random
Kekurangan Array :
- Boros memory jika banyak elemen yang tidak digunakan.
- Merupakan struktur penyimpanan data yang statis.
- Kebanyakan bahasa pemrograman mengimplementasikan array statis yang sulit diubah ukurannya di pada waktu eksekusi. Bila penambahan dan pengurangan terjadi terus-menerus, maka representasi statis