Title: Array (Larik)
1Array (Larik)
- Asad Djamalilleil
- http//kampusku.web.id
- asad.kom_at_gmail.com
2Pengertian Array
- Array adalah serangkaian tempat penyimpanan data
yang mempunyai nama dan tipe data yang sama,
dimana setiap elemen array umumnya diacu lewat
namanya dengan menyertakan index/subscript dari
elemen yang bersesuaian. - Secara teknis, data berbentuk array tersimpan di
memory komputer dengan lokasi yang berurutan.
Array di C bersifat statis.
3Deklarasi Array
tipeData namaArrayjumlah
tipeData ? tipe dari array yang dipesan, dapat
berupa tipe data dasar, struktur maupun
class. namaArray ? nama dari array yang dipesan
? jumlah pasang kurung-siku menyatakan dimensi
dari array jumlah ? jumlah elemen dari array,
harus disertakan pada saat deklarasi serta harus
berupa konstanta bertipe bilangan bulat.
4Index dari elemen array selalu dimulai dari 0
(nol). Contoh int nilai5 char
kata30 float isi35 ? contoh array 2
dimensi
nilai0 nilai1 nilai2 nilai3 nilai4
kata0 kata1 kata2 kata3 kata29
isi00 isi01 isi02 isi03 isi04
isi10 isi11 isi12 isi13 isi14
isi20 isi21 isi22 isi23 isi24
5Inisialisasi Array
tipeData namaArrayjumlah n1, n2,
Nilai yang disertakan pada saat inisialisasi akan
dipetakan satu persatu secara berurutan ke dalam
setiap elemen array. Apabila jumlah nilai lebih
sedikit daripada jumlah elemen array, maka elemen
array yang lain akan diberi nilai 0
(nol). Apabila jumlah nilai lebih banyak daripada
jumlah elemen array, maka C akan memberikan
pesan error pada saat program di-compile. Apabila
jumlah elemen tidak disertakan, maka secara
otomatis jumlah elemen akan di-set sesuai dengan
jumlah nilai yang disertakan. Khusus untuk array
bertipe char, nilai inisialisasi dapat langsung
ditulis dalam bentuk konstanta string.
6Contoh int nilai5 0 int nilai5
8, 3, 6, 2, 9 int nilai5 8,
3 int nilai 8, 5, 6 ? jumlah elemen
otomatis di-set menjadi 3, sesuai
dengan jumlah nilai yang disertakan
0 0 0 0 0
nilai0 nilai1 nilai2 nilai3 nilai4
8 3 6 2 9
nilai0 nilai1 nilai2 nilai3 nilai4
8 3 0 0 0
nilai0 nilai1 nilai2 nilai3 nilai4
8 5 6
nilai0 nilai1 nilai2
7Contoh char kata15 m,u,h,a,m,m,
a,d Inisialisasi di atas dapat juga
ditulis seperti berikut char kata15
muhammad atau char kata muhammad
? jumlah elemen otomatis bernilai 8
atau char kata muhammad ? menggunakan
pointer
m u h a m m a d 0 0 0 0 0 0 0
kata0
kata1
kata4
kata5
kata8
kata11
kata12
kata2
kata3
kata6
kata7
kata9
kata10
kata13
kata14
8Kelebihan menggunakan pointer untuk array bertipe
char adalah kita dapat merubah nilai variabel
array bertipe char secara langsung menggunakan
operator assignment ( ) Contoh char kata
muhammad kata muhammad rasulullah Tetapi
apabila array bertipe char tersebut berupa
fixed-array, kita tetap dapat merubah isi
variabel tersebut dengan menggunakan function
strcpy() yang berada pada file header string.h,
dengan syarat nilai yang akan diisikan tidak
boleh melebihi jumlah elemen yang dipesan pada
saat deklarasi. Contoh include
ltstring.hgt char kata50
muhammad strcpy(kata, muhammad rasulullah)
9Mengakses Elemen Array
namaArrayindex
Index array pada bahasa pemrograman C selalu
dimulai dari 0 (nol). Jadi, jika n adalah jumlah
elemen sebuah array, maka index dari elemen array
tersebut dimulai dari 0 (nol) sampai dengan n
1 Contoh int nilai5 7,5,3,6,9 cout ltlt
nilai2 ? statement ini akan menampilkan
nilai 3 char stambuk6 052123 cout ltlt
nilai0 ltlt nilai1 ? statement ini akan
menampilkan nilai 05 cout ltlt nilai ?
menampilkan seluruh elemen, yaitu 052123
10- Biasanya untuk memproses data berbentuk array,
kita bisa menggunakan statement pengulangan,
seperti for, while, maupun do-while. - Contoh
- int nilai5
- for(int i 0 i lt 5 i)
- cout ltlt "Input nilai ke-" ltlt (i 1) ltlt ""
- cin gtgt nilaii
-
- cout ltlt "Nilai yang Anda masukkan ..." ltlt endl
- for(int i 0 i lt 5 i)
- cout ltlt "\nNilai ke-" ltlt (i 1) ltlt " adalah "
ltlt nilaii - Bagian kondisi pada struktur pengulangan for di
atas, yaitu - i lt 5 dapat diganti dengan pernyataan yang lebih
dinamis, yaitu i lt sizeof(nilai) / sizeof(int)
11- Contoh
- char nama310
- for(int i 0 i lt 3 i)
- cout ltlt "Input nama "
- cin gtgt ws
- cin.getline(namai,sizeof(namai))
-
- cout ltlt "Daftar nama yang diinput ...\n"
- for(int i 0 i lt 3 i)
- cout ltlt namai ltlt endl
12- Buatlah program yang dapat menginput 5 buah data
dengan bentuk - Nama
- Nilai
- Tampilkan nama dengan nilai tertinggi