Anda di halaman 1dari 5

BAB VI

TIPE DATA ARRAY



Pendahuluan
Pada bab ini akan dijelaskan tipe data array dan penggunaannya. Dengan memahami
tipe data array, maka mahasiswa dapat membuat program yag berkaitan dengan manipulasi
banyak data dengan tipe yang sama, seperti masalah pencaria data atau pengurutan data.

Penyajian
Array atau larik terdiri atas bagian-bagian komponen yang memiliki tipe data sama.
Dalam penyimpanannya array selalu mempunyai jumlah komponen yang tetap yang
ditunjukkan oleh indeksnya.
6.1 Deklarasi Array
Variabel array dideklarasikan dengan mencantumkan tipe data dan nama variabel
yang diikuti dengan nomor indeks yang menyatakan banyaknya lokasi memori yang ingin
dibuat.
tipe data nama_variabel[indeks]
contoh int nilai[100]
Pada bahasa C/C++, no indeks dimulai dari 0, jadi pada contoh di atas, indeks dari 0-99,
sehingga bisa menampung 100 elemen bertipe integer.
6.2 Mengakses Data larik :
Cara mengakses data larik adalah dengan menunjukkan :
Nama_Larik[no.indeks] ;
Misal : x[1] berarti kita mengakses data larik x pada no.indeks ke-1.
Keuntungan :
Menggunakan data larik, kita tidak akan kehilangan nilai dari suatu data.
Kelemahan :
Saat ditentukan suatu variabel bertipe data array maka ia akan langsung mengambil
tempat pada memory penyimpanannya sesuai dengan tipe data yang digunakan pada array,
baik nantinya semua komponen pada array itu digunakan ataupun tidak.
6.3 Array Dimensi Banyak
Dalam pemrograman kadang kita menghadapi masalah saat kita akan
mendeklarasikan suatu matriks. Dengan adanya tipe data array maka masalah itu dapat
diselesaikan, yaitu dengan menggunakan array dengan dimensi dua atau lebih yang kemudian
dikenal dengan array dimensi banyak.
Pendeklarasian :
tipe data Nama_Array [indeks1][ indeks2]
Contoh :
int matriks[10][ 10]
Berarti matriks itu akan mempunyai dimensi (10x10), namun itu hanya batas atas dari
indeks yang dipesan dalam memori penyimpanan (di atas itu tidak akan disimpan),
sedangkan apabila nantinya kita hanya memasukkan jumlah baris misal 2 dan jumlah kolom
2 itu boleh saja selama tidak lebih dari 10.
Entry-entry dari matriks tersebut dapat kita panggil dengan mengetikkan
Nama_Array[indeks] ;
dari contoh diatas berarti Matriks[2,3] yaitu entry dari matriks pada baris kedua kolom ketiga.
6.4 Contoh Kasus menggunakan tipe data array
1. Program menghitung nilai maksimum, minimum, rata-rata dari sejumlah data integer.

int main ()
{
int i,n,maks,min,jum,h;
int nilai[10];
float rerata;
cout<<"Banyaknya data =";
cin>>n;
jum=0;
for (i=1;i<=n;i++)
{
cout<<"Data ke - " <<i<<"= ";
cin>>nilai[i-1];
jum =jum + nilai[i-1];
}
rerata= float(jum)/n;
maks=nilai[0];
min=nilai[0];
for (i=1;i<=n-1;i++)
{
if (nilai[i]>maks)
maks=nilai[i];
if (nilai[i]<min)
min=nilai[i];
}
cout<<"Nilai Terbesar ="<<maks<<endl;
cout<<"Nilai Terkecil ="<<min<<endl;
cout<<"Nilai Rata-rata ="<<rerata<<endl;
}

2. Program penjumlahan 2 matriks
#include <iostream.h>
using namespace std ;
int main(){
//deklarasi
int matrix_a[3][3],matrix_b[3][3],matrix_c[3][3];
int i,j;
char opr;
//input nilai matriks ke-1 dari baris dan kolom
for(i=1;i<=3;i++){
for(j=1;j<=3;j++){
cout<<"Masukkan matriks(1) nilai baris ke-"<<i<<"kolom ke-"<<j<<" : ";
cin>>matrix_a[i-1][j-1];
}
cout<<endl;
}
//output matriks ke-1
for(i=1;i<=3;i++){
for(j=1;j<=3;j++){
cout<<matrix_a[i-1][j-1]<<"\t";
}
cout<<endl;
}
//input nilai matriks ke-2 dari baris dan kolom
for(i=1;i<=3;i++){
for(j=1;j<=3;j++){
cout<<"Masukkan matriks(2) nilai baris ke-"<<i<<"kolom ke-"<<j<<" : ";
cin>>matrix_b[i-1][j-1];
}
cout<<endl;
}
//output matriks ke-2
cout<<endl;
for(i=1;i<=3;i++){
for(j=1;j<=3;j++){
cout<<matrix_b[i-1][j-1]<<"\t";
}
cout<<endl;
}
//Input Operator
cout<<"Tulis operator ";
cin>>opr;
//switching operator
for(i=1;i<=3;i++){
for(j=1;j<=3;j++){
switch(opr){
case '+' : matrix_c[i-1][j-1] = matrix_a[i-1][j-1] + matrix_b[i-1][j-1];
break;
case - : matrix_d[i-1][j-1] = matrix_a[i-1][j-1] - matrix_b[i-1][j-1];
break;
}
}
}

//Output Hasil matriks dari Operator +
cout<<endl;
for(i=1;i<=3;i++){
for(j=1;j<=3;j++){
cout<<matrix_c[i-1][j-1]<<"\t";
}
cout<<endl;
}
//Output Hasil matriks dari Operator -
cout<<endl;
for(i=1;i<=3;i++){
for(j=1;j<=3;j++){
cout<<matrix_d[i-1][j-1]<<\t;
}
cout<<endl;
}
}


Penutup
Latihan soal :
1. Buatlah program untuk menghitung nilai standar deviasi dari sejumlah data nilai ujian (0-
100)
2. Buatlah program untuk menampilkan matriks transpose dari suatu matriks.

Anda mungkin juga menyukai