Minggu, 24 April 2011

Array Satu Dimensi

ARRAY
Digunakan untuk menyimpan sekelompok data yang tipenya sama.

Deklarasi Array 1 Dimensi
tipe nama_var[max_data];

Contoh:
int a[5];
float x[100];
char nama[25];
.
dst.

Cara mengakses data bertipe array
nama_variabel[alamat]

Misal : Array a

27
23
35
46
87
à data yang tersimpan di array
0
1
2
3
4
à alamat array (dimulai dari 0)

a[0] = 27
a[1] = 23
.
.
a[4] = 87

Menginputkan data ke array
Data dapat diinputkan untuk setiap emelen array. Tetapi jika jumlah elemen array banayk, tentunya cara ini tidak efisien. Oleh karena itu dapat digunakan bantuan instruksi perulangan untuk input datanya.

Contoh 1:
#include <iostream.h>
#include <conio.h>

main() {
  int a[5];
  cout<<"Data ke 0 = ";cin>>a[0];
  cout<<"Data ke 1 = ";cin>>a[1];
  cout<<"Data ke 2 = ";cin>>a[2];
  cout<<"Data ke 3 = ";cin>>a[3];
  cout<<"Data ke 4 = ";cin>>a[4];
  int jumlah;
  jumlah=a[0]+a[1]+a[2]+a[3]+a[4];
  cout<<"\n\nJumlahnya = "<<jumlah;
  getch();
}
Contoh 2:
#include <iostream.h>
#include <conio.h>

main() {
  int a[5];
  int jumlah=0;
  for(int i=0;i<5;i++)
  { cout<<"Data ke "<<i<<" = ";cin>>a[i];
    jumlah+=a[i];
  }
  cout<<"\n\nJumlahnya = "<<jumlah;
  getch();
}

Tipe array juga dapat digabungkan dengan pointer. Untuk itu kita akan melakukan perubahan pada contoh 3 menjadi sebagai berikut:

Contoh 3:
#include <iostream.h>
#include <conio.h>

main() {
  int *a=new int[5];
  int jumlah=0;
  for(int i=0;i<5;i++)
  { cout<<"Data ke "<<i<<" = ";cin>>a[i];
    jumlah+=a[i];
  }
  cout<<"\n\nJumlahnya = "<<jumlah;
  getch();
}
Perhatikan contoh 3 diatas pada pengaksesan datanya. Jika array dideklarasikan sebagai pointer, maka untuk pengaksesan datanya cukup dituliskan sebagai array. Tetapi kita tetap bisa menuliskannya sebagai pointer tanpa harus menyertakan alamat arraynya. Jika demikian maka data akan diambilkan dari data pertama, atau data pada alamat ke 0.
Sehingga misalkan pada akhir program contoh 3 diatas kita tambahkan instruksi :
cout<<"\nData = "<<*a;
atau instuksi :
cout<<"\nData = "<<a[0];
akan mempunyai arti yang sama, data akan diambil dari data pertama (alamat 0).

Selain itu untuk input data dan proses penjumlahan, dapat juga dibuat dalam bentuk fungsi seperti pada contoh 4. Perhatikan pada saat tipe array menjadi parameter fungsi, jumlah data yang tersimpan dalam array boleh ditulis boleh tidak (optional). Sehingga bisa ditulis dengan : b[] saja

Tidak ada komentar:

Posting Komentar