Array di C

Hari ini gw ngebantuin temen gw yang jadi aslab (asisten lab) di kampus buat ngasisten. Praktek lab tadi ngebahas array, & kayaknya masih lumayan banyak yang nggak ngerti. Jadi ya, coba gw bahas di sini lah. Berhubung bahasa pemrograman yang dipake di prakteknya itu C, gw ngejelasin array di sini pake bahasa C.

int array[15];

Cara untuk deklarasi variabel array bisa diliat di atas. Di atas ini kita ngedeklarasiin array of integer yang panjangnya 15. Berarti array ini bisa dipake buat nampung 15 nilai integer, kurang lebih mirip dengan kalo kita deklarasiin 15 variabel yang tipe datanya integer lah.

Gimana caranya kalo kita mau ngakses satu variabel aja dari array yang panjangnya 15 karakter itu? Kita bisa manfaatin fitur dari array yang namanya index. Waktu kita ngedeklarasiin array tadi, kita otomatis punya variabel-variabel ini:

array[0]
array[1]
array[2]
array[3]
array[4]
array[5]
array[6]
array[7]
array[8]
array[9]
array[10]
array[11]
array[12]
array[13]
array[14]

Index dari array dimulai dari angka 0 sampe dengan n-1, di mana nilai n sama dengan panjang array. Jadi kalo panjang array-nya 15, index-nya mulai dari angka 0 sampe 14. Sekarang kita udah punya arraynya, gimana caranya kalo kita mau masukin nilai ke dalam array? Cara barbarnya sih kita bisa masukin satu-satu kayak begini.

scanf("%d", &array[0]);
scanf("%d", &array[1]);
scanf("%d", &array[2]);
scanf("%d", &array[3]);
scanf("%d", &array[4]);
scanf("%d", &array[5]);
scanf("%d", &array[6]);
scanf("%d", &array[7]);
scanf("%d", &array[8]);
scanf("%d", &array[9]);
scanf("%d", &array[10]);
scanf("%d", &array[11]);
scanf("%d", &array[12]);
scanf("%d", &array[13]);
scanf("%d", &array[14]);

Beres, semua data udah bisa dimasukin. Tapi apa nggak capek ngetik perintah C sebanyak itu, apalagi kalo array-nya panjang banget. Malesin kan ya? Karena itu kita manfaatin perintah for buat nginput datanya, 15 baris yang kepake cuma buat input data tadi bisa kita singkat penulisannya jadi begini.

int i;
for (i=0; i<15; i++)
scanf("%d", &array[i]);

Lebih singkat & lebih enak dibaca. Perintah-perintah looping kayak for memudahkan hidup banget lah buat urusan program-program yang banyak pake array. Untuk nampilin nilai yang ada di arraynya, kita tinggal masukin perintah ini di programnya.

for (i=0; i<15; i++)
print("%d ", array[i]);

Hidup terasa lebih indah kan? Itu tadi kalo array yang kita bikin cuma satu dimensi, gimana kalo arraynya dua dimensi, tiga dimensi, atau empat dimensi? Biasanya sih kita bikin array cuma sampe dua dimensi, agak jarang lah kita bikin array lebih dari dua. Jadi gw kasih contoh buat dua dimensi aja yak.

int array[15][15];

Di atas ini gw baru deklarasiin array dengan ukuran 15×15, dalam array ini kita bisa nampung 225 data. Kebayang kan gimana susahnya nginput data ke ini array kalo kita nginputnya pake cara barbar kayak tadi? 225 baris cuma buat nginput data doang pasti udah bikin males banget ngodingnya. Karena itu kita pake perintah for.

int i, j;
for (i=0; i<15; i++)
for (j=0; j<15; j++)
scanf("%d", &array[i][j]);

Dengan 4 baris perintah aja kita bisa nginput 225 data ke dalam array di atas mulai dari array[0][0] sampe array[14][14]. Buat yang belum ngerti logikanya, ini gw jelasin algoritmanya:

  1. Set nilai i=0.
  2. Set nilai j=0.
  3. Input data ke array[i][j].
  4. Tambah nilai j.
  5. Kalau j<15, kembali ke nomor 3.
  6. Tambah nilai i.
  7. Kalau i<15, kembali ke nomor 2.

Agak susah ngejelasinnya kalo lewat tulisan aja, tapi kira-kira urutan eksekusi perintahnya begitu. Untuk nampilin nilai yang ditampung di dalam array tadi, kita cukup ngeganti perintah scanf jadi printf.

for (i=0; i<15; i++)
{

for (j=0; j<15; j++)
printf("%d ", array[i][j]);

printf("\n");

One thought on “Array di C

  1. Pingback: Fenomena Supranatural, Glitch IRL? | Twisted Pair

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s