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 indeks sesuai
dengan urutannya. Melalui indeks inilah kita dapat mengakses data-data tersebut.
Indeks dari elemen array ini, baik dalam bahasa C++ maupun Java dimulai dari 0,
bukan 1 seperti dalam bahasa Pascal.
Macam – macam Array
Array dapat dibedakan
menjadi 3, yaitu :
·
Array berdimensi satu
·
Array berdimensi dua
·
Array berdimensi banyak
Array berdimensi satu
Mendefinisikan array meliputi :
–
Tipe data elemen array
–
Nama array
–
Jumlah elemen array
tipe_data nama_var_array[ukuran];
Misal :
char huruf[9];
Int umur[10];
Int kondisi[2]={0,1};
Int
arr_dinamis[]={1,2,3};
Keterangan :
Ø char huruf[9]: berarti akan memesan tempat di memori komputer sebanyak 9 tempat dengan
indeks dari 0-8, dimana semua elemennya bertipe data karakter semuanya.
Kalau satu karakter berukuran 1 byte, berarti membutuhkan memori sebesar 9 byte.
Ø int umur[10]: berarti akan memesan tempat di memori komputer sebanyak 10 tempat dengan
indeks dari 0-9, dimana semua elemennya bertipe data integer semuanya. Kalau satu
integer berukuran 4 bytes, berarti membutuhkan memori sebesar 4 x 10 = 20
bytes.
Ø int kondisi[2]: berarti akan memesan tempat di memori komputer sebanyak 2 tempat dengan indeks 0-1, dimana semua elemennya bertipe data integer semuanya.
Dan pada contoh di atas isi elemen-elemennya yang sebanyak 2 buah diisi sekaligus (diinisialisasi) yaitu pada elemen
kondisi[0] bernilai 0, dan elemen kondisi[1] bernilai 1.
Ø int arr_dinamis[]:berarti mendeklarasikan array dengan ukuran maksimum array tidak diketahui,
namun ukuran tersebut diketahui berdasarkan inisialisasi yaitu sebanyak 3
elemen, yang isinya 1,2, dan 3. Kita tidak dapat mendeklarasikan array dinamis
tanpa inisialisasi.
Ø Tanda [] disebut juga “elemen yang ke- „.
Misalnya kondisi[0] berarti elemen yang ke nol.
Ø Array yang sudah dipesan, misalnya 10 tempat
tidak harus diisi semuanya, bisa saja hanya diisi 5 elemen saja, baik secara
berurutan maupun tidak. Namun pada kondisi yang tidak sepenuhnya terisi
tersebut, tempat pemesanan di memori tetap sebanyak 10 tempat, jadi tempat yang
tidak terisi tetap akan terpesan dan dibiarkan kosong.
Contoh Array berdimensi satu
Pada program di depan kita memerlukan 5 buah variabel yang berbeda-beda
untuk menyimpan 5 buah nilai. Bisa dibayangkan kesulitan yang dihadapi jika kita
harus memproses data yang lebih banyak. Dengan menggunakan array, program menjadi lebih baik.
Ini adalah contoh Array
berdimensi satu dalam program C++
#include <iostream.h>
#include <conio.h>
void main()
{
float nilai[5];
float jumlah, rata2;
cout<<"Program
Menghitung Nilai Rata-rata"<<endl;
for(int i=0; i<5; i++)
{
cout<<"Masukkan
nilai ke "<<(i+1)<<" : ";
cin>>nilai[i];
}
jumlah = 0;
for(int i=0; i<5; i++)
{
jumlah
= jumlah + nilai[i];
}
rata2 = jumlah / 5;
cout<<"Nilai rata-rata
adalah "<<rata2<<endl;
getch();
}
Array berdimensi dua
Sering kali digambarkan/dianalogikan sebagai sebuah matriks. Jika array berdimensi satu hanya terdiri dari 1 baris dan banyak kolom,
array berdimensi dua terdiri dari banyak baris dan banyak kolom yang bertipe
sama.
Gambar array berdimensi (baris x kolom = 3 x 4)
Jurusan
|
1992
|
1993
|
1994
|
1995
|
Teknik Informatika
|
35
|
45
|
80
|
120
|
Manajemen Informatika
|
100
|
110
|
70
|
101
|
Teknik Komputer
|
10
|
15
|
20
|
17
|
Bentuk tabel diatas dapat dituangkan dalam bentuk array berdimensi dua
dengan pendefinisian sebagai berikut :
int
data_lulus[3][4];
|
ü 3 menyatakan jumlah baris (mewakili jurusan)
ü 4 menyatakan jumlah kolom (mewakili tahun kelulusan)
Ini adalah dalam bentuk
suatu matriks.
Larik Dimensi Dua dapat mewakili bentuk suatu matriks, contoh:
Suatu matriks
x =
selanjutnya dapat dideklarasikan
sebagai berikut:
int x[2][4];
atau diklarasikan dengan
memberikan nilai elemennya sbb:
int x[2][4]= {{8, 5, 9, 8},{8,
2, 1, 0}}
Contoh Array berdimensi
dua
Berikut ini merupakan contoh penggunaan array berdimensi 2 untuk program
pertambahan matrik ukuran 3x3.
#include <iostream.h>
#include <conio.h>
#include <iomanip.h>
void main()
{
cout<<"Program
Pertambahan Matrik 3x3"<<endl;
int matrikA[3][3];
int matrikB[3][3];
int matrikC[3][3];
cout<<endl<<"Masukkan data Matrik A"<<endl;
for(int i=0; i<3; i++)
{
for(int j=0; j<3; j++)
{
cout<<"Elemen ke
"<<(i+1)<<","<<(j+1)<<" : ";
cin>>matrikA[i][j];
}
}
cout<<endl<<"Masukkan data Matrik B"<<endl;
for(int i=0; i<3; i++)
{
for(int j=0; j<3; j++)
{
cout<<"Elemen ke
"<<(i+1)<<","<<(j+1)<<" : ";
cin>>matrikB[i][j];
}
}
for(int i=0; i<3; i++)
{
for(int j=0; j<3; j++)
{
matrikC[i][j] = matrikA[i][j] +
matrikB[i][j];
}
}
clrscr();
cout<<"Matrik A
:"<<endl<<endl;
for(int i=0; i<3; i++)
{
for(int j=0; j<3; j++)
{
cout<<setw(4)<<matrikA[i][j]<<"
";
}
cout<<endl;
}
cout<<endl<<"Matrik B :"<<endl<<endl;
for(int i=0; i<3; i++)
{
for(int j=0; j<3; j++)
{
cout<<setw(4)<<matrikB[i][j]<<"
";
}
cout<<endl;
}
cout<<endl<<"Hasil pertambahan, Matrik C
:"<<endl<<endl;
for(int i=0; i<3; i++)
{
for(int j=0; j<3; j++)
{
cout<<setw(4)<<matrikC[i][j]<<"
";
}
cout<<endl;
}
getch();
}
Tidak ada komentar:
Posting Komentar