Assalamu'alaikum..
selamat pagi untuk daerah Bandung dan sekitarnya.. dipagi yang damai ini saya akan memposting tentang Array dalam bahasa C. jika ada kesalahan mohon dikoreksi ya.. disini kita sama-sama belajar :). selamat menyimak..
Array adalah kumpulan
dari data yang bertipe sama dalam urutan tertentu yang menggunakan sebuah nama
yang sama.
Mengapa sih array diciptakan? Hmm
pertanyaan cerdas. Sekarang coba kamu bayangkan kamu butuh banyak variabel
nilai untuk siswa dengan tipe data yang sama. Jika tidak ada array kamu akan
membuatnya satu persatu.
int nilai1,nilai2,nilai,nilai.
Tapi kakak. Saya kan Cuma butuh variabel paling 4. Itu
masih bisa saya copy paste.
Oke lah kalo Cuma 4. Tp kalo udah puluhan bahkan
ratusan gimana hayo? Sekarang memang tak terlalu terlihat fungsi array. Tapi
suatu saat nanti pasti kita akan menemukan kasus dimana array sangat dibutuhkan
karena efisien. Hemat tenaga penulisan dan mudah pengaksesan.
Misal variable nilai siswa tadi kita ubah dalam bentuk
array:
int nilai_siswa[4];
kita hanya menuliskan syntax seperti itu. Sangat efisien bukan?
Seberapa banyaknya data yang kita butuhkan kita hanya tinggal mengubah panjang datanya.
Nilai-nilai data di suatu array disebut dengan elemen-elemen array. Elemen array juga biasa disebut index array. Index array secara default dimulai dari 0. Pengaksesan data pada array menggunakan index. Jadi kita harus benar benar paham apa itu index.
Array bisa dianalogikan sebuah kereta api dengan gerbongnya adalah indexnya. SerayuPagi adalah nama arraynya, kepala kereta adalah index ke 0, gerbong ke 1 adalah index ke-1, gerbong ke-2 adalah index ke-2.
Deklarasi array :
Tipe_data_array nama_array[ukuran]
Contoh
int nilai_siswa[10];
bilangan adalah nama arraynya dengan panjang 10. Jadi
bisa dibayangkan seperti ini:
index
|
0
|
1
|
2
|
3
|
4
|
5
|
6
|
7
|
8
|
9
|
jumlah
|
1
|
2
|
3
|
4
|
5
|
6
|
7
|
8
|
9
|
10
|
nilai_siswa
|
Bisa kita lihat. Indexnya berakhir di 9 tp mengapa
jumlahnya berakhir di 10?
Karena panjang arraynya 10, jadi jumlah ruang nya pun
10. Karna index array dimulai dari 0, maka index berakhir di 9 pada jumlah ke
10.
Jika menggunakan variabel biasa dalam segi pengisian
nilai maka kita akan mengetik kode sebanyak ini:
scanf(“%d”,&nilai1);
scanf(“%d”,&nilai2);
scanf(“%d”,&nilai3);
...
scanf(“%d”,&nilai10);
betapa tidak hematnya.. Berbeda ketika kita
menggunakan array.
Kaka kalo pake array terus mau ngisi semua index nya
kita nulis satu-satu dong?
scanf(“%d”,&nilai_siswa[0]);
scanf(“%d”,&nilai_siswa[1]);
scanf(“%d”,&nilai_siswa[2]);
dst...
hmm ya nggak lah.. ada polanya kan?kita bisa pake
perulangan kan. Misalnya pake for:
for(int a=0;a<10;a++){
scanf(“%d”,&nilai_siswa[a]);
}
Sekarang dalam segi mencetak. Jika kita menggunakan
variabel biasa maka akan seperti ini:
printf(“%d”,nilai_siswa1);
printf(“%d”,nilai_siswa2);
printf(“%d”,nilai_siswa3);
printf(“%d”,nilai_siswa4);
...
printf(“%d”,nilai_siswa10);
sangat tidak efektif waktu dan tenaga. Kalo pake
array, kita cuma ngoding segini:
for(int a=0;a<10;a++){
printf(“%d”,nilai_siswa[a]);
}
Gimana? Simple kan? Masih gak mau pake array? Hmm..
program itu semakin sedikit syntaxnya semakin bagus :).
Kaka, saya kan cuma mau ngakses index ke 2. Itu
caranya gimana? Kan ribet kalo pake perulangan kalo cuma ngakses index doang.
Kalo cuma mau ngakses 1 index misal kita akan mengisi
nilai siswa index ke 2 maka:
nilai_siswa[2]=90;
jika hanya ingin mencetak index kedua maka:
printf(“%d”,nilai_siswa[2]);
ya tadi kita sudah belajar array. Eits tp jangan
seneng dulu.. itu baru array dimensi satu.
Lho kak emang ada perapa dimensi?
Array itu ada 3: Dimensi satu(yang baru kita
pelajari), dimensi dua dan multi dimensi. Hmm banyak kan? Jangan bingung dulu.
Kakak jelasin kok :)
Array
berdimensi dua
Array dua
dimensi merupakan array yang terdiri dari m buah baris dan n buah buah kolom.
Bentuknya dapat berupa matriks atau tabel.
Contoh array dua dimensi dalam kehidupan sehari-hari
misalnya rak sepatu di masjid.
Ada baris dan kolomnya kan?
Ada baris dan kolomnya kan?
Baris 1 Kolom1
|
Kolom 2
|
Kolom 3
|
Kolom 4
|
Kolom 5
|
Baris 2 Kolom1
|
||||
Baris 3 Kolom1
|
Deklarasi array 2 dimensi:
Tipe_data_array nama_array
[baris][kolom]
Contoh deklarasinya:
int angka[3][5];
Contoh lainnya dikehidupan sehari hari adalah asrama
jauhnya PUB. Bisa dibuat array:
int asrama[2][3];
dianalogikan aray asrama ini mempunyai 2 kamar dengan
masing-masing kamar mempunyai anggota3 orang.
Misal kamar pertama berisi mahasiswa dengan absen
1-3
Kamar kedua berisi mahasiswa dengan absen 4-6
Maka bisa ditulis:
asrama[0]={1,2,3};
asrama[1]={2,3,4};
seperti halnya array saatu dimensi. Array 2 dimensi
ini bisa menggunkana perulangan. Tentu saja perulangan dalam perulangan (nested).
Array
multidimensi
Array multidimensi merupakan array yang mempunyai
ukuran lebih dari dua. Bentuk pendeklarasian array multidimensi sama saja
dengan deklarasi array dimensi satu maupun dimensi dua.
Deklarasi array :
Tipe_data_array nama_array [ukuran 1][ukuran
2] . . . [ukuran N]
Bersambung...
Sekian dari saya, terimakasih sudah berkunjung. semoga bermanfaat.. :)
Komentar
Posting Komentar