PROPIL

Jumat, 31 Mei 2013

ARRAY (LARIK)


A.  Tujuan
1.    Mahasiswa dapat memahami definisi dan kegunaan array.
2.    Mahasiswa dapat mengetahui bagaimana mengimplentasikan array dalam program.

B.  Dasar Teori
1.    Array Satu Dimensi
Berikut merupakan sedikit penjelasan array berdimensi satu, untuk lebih jelasnya berikut contohnya :
Sebuah array bernama nil yang terdiri dari 5 data dengan tipe int, dapat digambarkan sebagai berikut :
Tiap ruang kosong merupakan tempat untuk masing-masing elemen array bertipe integer. Penomorannya berawal dari 0 sampai 4, sebab dalam array index pertama selalu dimulai dengan 0.
o  Deklarasi array
Sama seperti variabel, array harus dideklarasikan dulu sebelum mulai digunakan. Sintaknya adalah :
tipe nama[elemen];
o  Inisialisasi array
Nilai suatu variabel array dapat juga diinisialisasi secara langsung padasaat deklarasi, misalnya :
int nil[5]={1,3,6,12,24};
Maka di penyimpanan ke dalam array dapat digambarkan sebagai berikut :

o  Mengakses nilai array
Untuk mengakses nilai yang terdapat dalam array, dapat di gunakan sintak:
nama[index];
Pada contoh di atas, variabel nil memiliki 5 buah elemen yang masing-masing berisi data. Pengaksesan tiap-tiap elemen data adalah :
Misal, untuk memberikan nilai 75 pada elemen ke 3, maka pernyataannya adalah:
nil[2] = 75;
Atau jika akan memberikan nilai array kepada sebuah variabel a, dapat ditulis:
a=nil[2];

2.    Array Dua Dimensi
Struktur array yang dibahas di atas mempunyai satu dimensi, sehingga variabelnya disebut dengan variabel array berdimensi satu. Pada bagian ini, ditunjukkan array berdimensi lebih dari satu, yang sering disebut dengan array berdimensi dua. Sebagai contoh, sebuah matrik B berukuran 2 x 3 dapat dideklarasikan sebagai berikut :
int b[2][3]={{2,4,1},{5,3,7}};
Yang akan menempati lokasi memori dengan susunan sebagai berikut:
3.    Array Multi-Dimensi
Larik multi dimensi merupakan tipe data yang sering digunakan pada pendeklarasian variabel yang sama tapi memiliki lebih dari dua indeks yang berbeda, serta pengisian elemen larik dilakukan melalui indeks. Indeks larik secara default dimulai dari 0,0. Jumlah elemennya adalah indeks1 x indeks 2 x...indeks n
Bentuk umum penulisan : 
type_data variabel[jumlah_elemen_1]
[jumlah_elemen_2]...[jumlah_elemen_n];
Contoh :
int x[2][2][2];
int y[2][2][2]={1,2,3,4,5,6,7,8};

4.    Array Dinamis
Array dinamis adalah array yang pengalokasi memorinya dapat diubah-ubah. Hal ini terjadi karena array dinamis menggunakan pointer sebagai tempat pengalokasian memori.
Contoh script Array Dinamis :

#include <iostream.h>
#include <conio.h>
#include <iomanip.h>

void main(){
int b, k;
cout<<"baris : ";
cin>>b;
cout<<"kolom : ";
cin>>k;
int **sop;
sop=new int *[b];
for(int i=0;i<b;i++){
     sop[i]=new int [k];
}
for(int i=0;i<b;i++){
for(int j=0;j<k;j++){
cout<<"baris "<<i<<" kolom "<<j<<" : ";
cin>>sop[i][j];
}
}
for(int i=0;i<b;i++){
for(int j=0;j<k;j++){
cout<<sop[i][j]<<setw(4);}
cout<<endl;}
getch();}

C.    PERMASALAHAN
1.      Buatlah matriks A ordo 2 x 2
2.      Transpose matriks A dan simpan pada matriks B
3.      Jumlahkan kedua matriks tersebut
4.      Tampilkan hasil penjumlahannya
Program

#include <iostream.h>
#include <conio.h>
void main(){
   float matriksA [2][2],matriksB [2][2],matriksC [2][2];
   int i,j;
   for (int i=0; i<2; i++){
   for (int j=0; j<2; j++){
cout<<"\nmasukkan nilai matriks A ke : ["<<i<<"] ["<<j<<"] = ";
cin>>matriksA [i][j];
   }
 }
cout<<"\n\nmenampilkan matriks A "<<endl;
   for (int i=0; i<2; i++){
      for (int j=0; j<2; j++){
cout<<matriksA [i][j]<<" ";
   }
cout<<endl<<endl;
 }
   for (int i=0; i<2; i++){
      for (int j=0; j<2; j++){
matriksB[j][i] = matriksA[i][j];
   }
 }
cout<<"\n\ntampil matriks B"<<endl;
   for (int i=0; i<2; i++){
      for (int j=0; j<2; j++){
cout<<matriksB[i][j]<<" ";
   }
cout<<endl;
 }
cout<<"\n\nhasil penjumlahan"<<endl;
   for (int i=0; i<2; i++){
      for (int j=0; j<2; j++){
matriksC [i][j]=matriksA[i][j] + matriksB [i][j];
cout<<matriksC [i][j]<<" ";
 }
cout<<endl;
 }
getch();
}






Tidak ada komentar:

Posting Komentar