Array atau dalam beberapa literatur disebut sebagai
larik, adalah suatu tipe variabel yang berisi kumpulan
data dengan setiap elemen datanya bertipe sama.
Setiap komponen atau elemen array dapat diakses dan
dibedakan melalui indeks yang spesifik dimana
jumlahnya sebanyak ukuran array tersebut dikurangi
satu (karena perhitungan indeks dimulai dari nol).
Fungsi Array
Sebagai langkah efisiensi penggunan memori komputer,
sebab data elemen array dialokasikan pada suatu
deretan sel memori tertentu. Hal ini jauh lebih
efisien dibandingkan dengan jika kita mendefinisikan
masing – masing data pada suatu variabel tersendiri
yang pastinya akan banyak menyita memori.
Dengan menggunakan array, misal array x
Fungsi Array
Agar memudahkan programmer dalam menyusun aplikasi
yang berhubungan dengan banyak data terutama dalam
masalah pencarian dan pengurutan data secara cepat.
2.Deklarasi Array Satu Dimensi
Bentuk umum : tipe_var nama_var[ukuran];
Contoh :
Deklarasi Array Multidimensi
Array dapat pula digunakan untuk menangani kumpulan
data yang memiliki dimensi lebih dari satu, misalnya
untuk penanganan pada matriks.
Bentuk umumnya :
tipe_var nama_var[ukuran 1][ukuran 2] ...
Contoh :
int iMatriks[2][2]={
{10, 2},
{2, 4}};
Array Subscript
Array subscript adalah nilai atau expresi (pernyataan)
dalam tanda kurung setelah nama array untuk
menunjukkan elemen array mana yang harus diakses
(indeks).
Contoh :
x[2] 2 = array subscript
n=10;
x[n – 8] n – 8 = array subscript
int x[8];
3.Mengakses Elemen Array
Untuk dapat mengakses elemen - elemen array sebagian
besar sama seperti tipe variabel lainnya, tapi kita
harus menyertakan indeksnya yang bisa didapat secara
langsung atau menggunakan subscript.
Contoh :
...
int x[2];
x[1]=10;
printf(“%d”, x[1]);
...
Inisialisasi Array
Array dapat diinisialisasi secara langsung pada saat
pertama kali dideklarasikan (efisien untuk array
berdimensi sedikit).
Contoh :
int x[2]={1, 2};
Array dapat dideklarasikan terlebih dahulu, baru
kemudian diisi elemennya.
Contoh :
int x[2];
x[0]=1;
x[1]=2;
Penggunaan pada pengulangan untuk akses berurutan
Pembahasan program mencari nilai kuadrat bilangan
antar 1 – 10;
Source code :
#include
void main()
{
int iData[11], iC;
for (iC=0; iC<=10; iC++)
{
iData[iC]=iC * iC;
printf(“(%d) kuadrat = %d\n”, iC, iData[iC]);
}
}
4.Output program contoh pengulangan menggunakan array
Penjelasan
Deklarasikan array iData yang berukuran 11 elemen
untuk menyimpan data hasil kuadrat dari bilangan 0 –
10.
int iData[11], iC;
Inisialisasi pengulangan berurutan mulai 0 – 10 (11
kali).
for (iC=0; iC<=10; iC++)
Mengisi data pada tiap elemen pada tiap kali
pengulangan dengan kuadrat nilai variabel pencacah
(iC)
iData[iC]=iC * iC;
Menampilkan hasilnya dilayar.
printf(“(%d)\xFD = %d\n”,iData[iC]);
5.Penggunaan elemen array sebagai argumen
atau parameter pada suatu fungsi
Contoh :
void fnIniFungsi(double Param1, double *Param2,
double *Param3);
Potongan program tersebut dapat dioptimalkan dengan
menggunakan array seperti terlihat pada contoh :
double Param[3];
void fnIniFungsi(Param[0], &Param[1], &Param[2]);
Sehingga dapat penggunaan memori komputer, selain itu
tidak perlu ada pengarahan ke variabel output (*)
karena secara otomatis akan diisikan kembali ke array
tersebut kedalam elemen yang sesuai (&).
Pencarian Dan Pengurutan Menggunakan Array
Dengan menggunakan array, maka kita dapat lebih mudah
untuk melakukan pencarian dan pengurutan berdasarkan
pada indeks elemen array tersebut.
Algoritma Pencarian Array
Asumsikan bahwa target yang dicari belum ditemukan
Mulai dengan melakukan inisialisasi elemen – elemen
array
Ulangi jika target belum ditemukan dan masih terdapat
elemen array yang belum dibaca
Jika elemen yang dicari belum sesuai dengan
target, maka
Asumsikan kembali bahwa target belum
ditemukan
Jika tidak, maka
Lanjutkan ke elemen array selanjutnya
Jika target ditemukan, maka
Kembalikan indeks target sebagai hasil pencarian
Jika tidak, maka
Kembalikan nilai -1 sebagai hasil pencarian
6.Listing Program Contoh Pencarian Dengan Array
#include
#define TdkKetemu -1
int cari(const int arr[], int target, int n)
{
int i, ketemu = 0, hasil; i=0;
while (!ketemu && i < n) {
if (arr[i] == target) ketemu = 1;
else ++i;
}
if (ketemu) hasil = i;
else hasil = TdkKetemu;
return (hasil);
}
void main() {
int nrp[10]={1, 2, 3, 4, 5, 6, 7, 8, 9, 10}, nrpcari, ulangi, hasil;
ulangi=1;
while (ulangi==1) {
ulangi=0;
printf("\nMasukkan NRP yang mau dicari : ");
scanf("%d", &nrpcari);
hasil=cari(nrp, nrpcari, 10);
if (hasil==-1)
printf("Tidak ketemu !");
else
printf("Ditemukan pada elemen array ke-%d", hasil);
printf("\n\nUlangi pencarian ? (Ketik 1 bila ya !) ");
scanf("%d", &ulangi);
}
}
7.Algoritma Pengurutan Array Menggunakan Metode Urut
Seleksi
Untuk setiap nilai dari isi dari 0 sampai n-2
Cari min yang merupakan indeks yang memuat elemen
terkecil dari subarray yang belum terurut dari indeks
isi hingga n-1
Jika isi bukan elemen terkecil (min)
Tukar elemen terkecil dengan elemen isi
Array Multidimensi
Adalah array yang terdiri atas lebih dari dua atau
lebih dimensi, biasanya digunakan untuk menangani
tabel data, matriks dan objek dua dimensi lainnya.
Contoh :
int x[2][2];
x[0][0] x[0][1]
x[1][0] X[1][1]
Contoh Penggunaan Array Multidimensi
#include
void main() {
int x, y, pola[8][8]={
{1, 1, 1, 1, 1, 1, 1, 1},
{1, 0, 0, 0, 0, 0, 0, 1},
{1, 0, 0, 0, 0, 0, 0, 1},
{1, 0, 0, 0, 0, 0, 0, 1},
{1, 0, 0, 0, 0, 0, 0, 1},
{1, 0, 0, 0, 0, 0, 0, 1},
{1, 0, 0, 0, 0, 0, 0, 1},
{1, 1, 1, 1, 1, 1, 1, 1}
};
for (y=0; y<8; y++) {
for (x=0; x<8; x++) {
if (pola[y][x]==1) printf("#"); else printf(" ");
}
printf("\n");
}
}
Tidak ada komentar:
Posting Komentar