Array adalah sekelompok data sejenis
yang disimpan ke dalam variabel dengan nama yang sama, dengan memberi indeks
pada variabel untuk membedakan antara yang satu dengan yang lain.
VARIABEL ARRAY
nama_variabel[indeks]
ketentuan nama variabel arrray sama
dengan nama variabel biasa.
indeks menunjukkan nomor dari variabel
.
DEKLARASI VARIABEL ARRAY
BU :
tipe nama_variabel[indeks];
Contoh :
float bil[10];
deklarasi
variabel array dengan nama bil yang akan menampung 10 data yang
bertipe float. Indeks
10 menunjukkan variabel
bil terdiri dari
10 elemen, dimana setiap elemen
akan menampung sebuah data.
Indeks array dimulai dari nol(0) ,
sedang nomor elemen biasanya dimulai dari satu(1). Nomor elemen dapat dibuat
sama dengan nomor indeks untuk mempermudah pembuatan program yaitu dengan
memberi indeks satu lebih banyak dari jumlah data yang dibutuhkan, sehingga
menjadi :
float
bil[11]
INISIALISASI ARRAY 1 DIMENSI
Inisialisasi dapat dilakukan bersama dengan deklarasi atau
tersendiri. Inisialisasi suatu array adalah dengan meletakkan elemen array di
antara tanda kurung kurawal {}, antara elemen yang satu dengan lainnya
dipisahkan koma.
int bil[2] = {4,1,8}
bil[0]
= 4
bil[1] = 1
bil[2]
= 8
AUTOMATIC ARRAY adalah Inisialisasi
array dilakukan di dalam fungsi tertentu. Hanya
compiler C yang berstandar ANSI C yang dapat menginisialisasikan
automatic array.
Cara menginisialisasikan array dari compiler yg tidak mengikuti
standar ANSI C:
1. Diinisialisasikan di luar fungsi
sebagai variabel GLOBAL/EXTERNAL ARRAY.
int
bil[2]={0,0,0};
main()
2. Diinisialisasikan didlm fungsi
sebagai variabel LOKAL/STATIC ARRAY.
main()
{
static
int bil[2]={0,0,0};
.........
Pada automatic array yang tidak
diinisialisasikan , elemen array akan memiliki nilai yang tidak beraturan. Bila
global & static array tidak diinisialisasi maka semua elemen array secara
otomatis akan diberi nilai nol(0).
Contoh :
main()
{
int
y;
int
hitung=0;
int
x[0];
for(y=0;y<5;y++)
{
hitung+=y;
x[y]=hitung;
printf("%3d
- %3d\n",y,x[y]);
}
}
OUTPUT:
0-
0
1-
1
2-
3
3-
6
4-
10
MENDEFINISIKAN JUMLAH ELEMEN ARRAY
DALAM VARIABEL
Besarnya variabel indeks dapat
ditentukan dengan menggunakan
preprocessor directives #define
#define N 40
main()
{
int
no[N],gaji[N],gol[N],status[N],juman[N];
Bila besari indeks akan diubah menjadi
50, cukup diganti dengan
#define N 50
ARRAY 2 DIMENSI
nama_variabel
[indeks1][indeks2]
indeks1 : jumlah/nomor baris
indeks2 :
jumlah/nomor kolom
Jumlah elemen yang dimiliki array 2 dimensi
dapat ditentukan dari hasil perkalian indeks1
* indeks2
misal : array A[2][3] akan memiliki 2*3
= 6 elemen.
main()
{
float bil [5] [5]
.......
dapat dituliskan dengan #define
#define N 5
main()
{
float
bil [N] [N]
.......
INISIALISASI ARRAY 2 DIMENSI
main()
{
float
bil[2] [3] =
{
{ 1,2,3}, /*baris 0*/
{ 4,5,6}, /*baris
1*/
}
elemen bil [0] [0] = 1
elemen bil [0] [1] = 2
elemen bil [0] [2] = 3
elemen bil [1] [0] = 4
elemen bil [1] [1] = 5
elemen bil [1] [2] = 6
Contoh :
main()
{
int
x[3][5];
int
y,z;
int
hitung=0;
for(y=0;y<3;y++)
{
printf("y
= %d\n",y);
for(z=0;z<5;z++)
{
hitung+=z;
x[y][z]
= hitung;
printf("%/t%3d
- %3d\n",z,x[y][z]);
}
}
}
OUTPUT:
y = 0
0- 0
1- 1
2- 2
3- 6
4- 10
y = 1
0- 10
1- 11
2- 13
3- 16
4- 20
y = 2
0- 20
1- 21
2- 23
3- 26
4- 30
STRING dan ARRAY
1. Pada string terdapat karakter null(\0) di akhir string
2. String sudah pasti array, array
belum tentu string
CONTOH - CONTOH :
1. array dengan pengisian input melalui
keyboard
baca_input()
{
float
nilai[10];
for(i=0;i<10;i++)
scanf("%d",&nilai[i]);
}
2. Fungsi yang mencetak isi array dari
akhir ke awal
cetak_array()
{
float
nilai[10];
for(i=9;i>=0;i--)
scanf("%3f",nilai[i]);
}
3. Menghitung rata - rata isi array
nilai
rata_rata()
{
float
nilai[10],jum*rata;
for(i=0,jum=0;i<=9;i++)
jum+=nilai[i];
rata=jum/i;
}
4. Mencari nilai terbesar
besar()
float
temp,nilai[10];
{
for(temp=nilai[0],i=1;i<=9;i++)
if(nilai[i]
> temp)
temp=nilai[i];
}
return(temp)
Tidak ada komentar:
Posting Komentar