Dokumen tersebut membahas tentang array dan string dalam pemrograman. Secara ringkas, dokumen tersebut menjelaskan tentang tujuan pembelajaran mahasiswa untuk memahami dan mengimplementasikan array serta string dalam pemrograman, konsep dasar array satu dan dua dimensi, serta contoh-contoh kode program penggunaan array."
2. Tujuan Pembelajaran
Mahasiswa mampu
Mahasiswa dapat lebih
mengimplementasikan
memahami tentang
array dalam
Array
pemrograman
Mahasiswa mampu
menyelesaikan
masalah dengan
menggunakan array.
3. Struktur
Data
Pemaham
String
an Array
Array
Materi Deklarasi
Multidim
pembelajaran Array
ensi
Array Dua Elemen
Dimensi array
Array
Satu
Dimensi
5. Syarat Program yang Baik
• Program yang baik haruslah memenuhi
beberapa kriteria, antara lain:
1. Program haruslah sesuai dengan tujuan dan
memenuhi spesifikasi yang telah ditentukan.
2. Fleksibel
3. Tidak mengandung kesalahan
4. Didokumentasi secara baik
5. Cepat dalam waktu penggunaannya
6. Efesien dalam penggunaan memori komputer
6. Memori
• Memori merupakan tempat
software berada
– Jadi, isinya dapat berupa Sistem
Operasi, program atau data
– Jika ditelusuri lebih rinci lagi, setiap
lokasi di memori dapat berisi
perintah dan/atau data (angka,
alamat, nilai, dsb.)
• Memori merupakan subsistem
komputer yang sering
menjadi fokus pemrogram:
– Temporary storage area dalam hal
ini RAM
7. Review Sistem Komputer
Alamat
(disederhanakan)
RAM
OUTPUT
(CONSOLE) 0
1
2
3
4
HDD CPU 5
…
...
...
…
81345
INPUT 81346
(KEYBOARD) 81347
...
...
IF2031-Algoritma dan Struktur
7
Data/Hamonangan Situmorang
8. Review Sistem Komputer
Proses penerjemahan bahasa C/C++ ke bahasa mesin
Keterangan: bahasa mesin di bawah-kanan ini sebenarnya berupa angka-
angka biner (‘dimanusiawikan’ untuk memudahkan pemahaman)
x=1; set memory[801] to hold 00000001
i=0; set memory[802] to hold 00000000
while (i!=10) { if memory[802] = 10 jump to inst #8
i++; increment memory[802]
{
x=x*2; set memory[803] to 2 times memory[801]
} put memory[803] in to memory[801]
jump to instruction #3
printf("%d",x); print memory[801]
IF2031-Algoritma dan Struktur
8
Data/Hamonangan Situmorang
9. Review Sistem Komputer
• Biasanya, proses penterjemahan itu beberapa
tahap
– Melalui bahasa assembly
Bahasa C Bahasa Assembly Bahasa Mesin
x=1; ST 1,[801] 00000000001001011101001100000000
ST 0,[802] 00000000001001001101010000000000
i=0;
TOP: BEQ [802],10,BOT 00000000100010100100100111110000
while (i!=10) { INCR [802] 00000000010001000101010000000000
00000000010010001010011110100011
i++; MUL [801],2,[803]
00000000111001011010101100000010
x=x*2; ST [803],[801] 00000000001010010000000000000000
JMP TOP 00000000110101010000000000000000
}
BOT: LD A,[801] 00000000110101001010100000000000
printf("%d",x); CALL PRINT 00000000100100010100010000000000
IF2031-Algoritma dan Struktur
9
Data/Hamonangan Situmorang
10. Pengertian Struktur Data
• A data structure is a way of organizing input
data and operations which can be performed
on this data (ex: add, delete, search an
elemen).
• Struktur data adalah cara pengaturan data
agar dapat disimpan memori komputer secara
efisien
• Struktur data adalah pengaturan data didalam
memori komputer.
11. Struktur Data
• Tujuannya : Supaya lebih mudah/efisien dalam
pengaksesan/pemrosesan data tersebut.
• Secara umum, terdapat beberapa struktur data:
• Static -> Pengalokasian memori statis : ruang
memori yang dipakai oleh data tidak dapat dihapus
bila data tersebut sudah tidak digunakan lagi pada
saat program dijalankan.
• Dinamic -> Pengalokasian memori dinamis
12. Struktur Data
Basic Static Dinamic
Linked
Integer Array
list
Double Struct Queue
boolean Stacks
trees
14. Latar Belakang Array
• Sejauh ini Program yang kita pelajari dan yang kita
buat masih sangat terbatas, hanya berupa pemberian
satu nilai pada satu variabel
• Padahal sering kali kita perlu untuk meng-assign
ataupun memanipulasi banyak nilai ke sekelompok
variabel
• Sebagai contoh jika anda diminta membuat program
untuk menyimpan 6000 nilai yang berbeda...
• Berarti program Anda membutuhkan 6000 variabel
berbeda, maka daripada Anda susah-susah mencari
nama untuk tiap variabel Anda, gunakanlah
array!!.
14
15. Pemahaman Array
• Array adalah sekumpulan data
yang memiliki tipe yang sama.
• Elemen-elemen array tersusun
secara berurutan dalam
memori
• Array memiliki alamat yang
besebelahan/berdampingan
tergantung lebar tipe datanya. a[0]
• Elemen-elemen array dapat a[1]
diakses secara random di a[2]
dalam memori. a[3]
• Array dapat berupa array 1 a[4]
dimensi, 2 dimensi, bahkan n- a[5]
dimensi. anu
• Contoh penggunaan array :
– Kumpulan nama mahasiswa
pada satu kelas
– Kumpulan alfabet
16. Contoh Kasus
Untuk lebih memahami tentang manfaat array
marilah kita analisa contoh program berikut :
• Program untuk memasukkan 3 nilai input dari
user dan menampilkannya ke layar.
17. Tanpa Array
3 nilai = 10 Baris
TIDAK PRAKTIS !!!
18. Dengan Array
Hanya 6 Baris
PRAKTIS &
EFFISIEN!
Tidak perlu menambah
perintah jika data lebih
banyak.
19. Struktur Array
berupa bilangan bulat yang terurut secara
ascending dimulai dari nol sampai n-1
index digunakan untuk mengakses element array.
Dimana n adalah panjang dari array.
Array Satu Dimensi
array Array Dua Dimensi
Array Multi Dimens
element
digunakan untuk menyimpan data. Jenis data yang dapat disimpan
tergantung pada tipe data yang diberikan array.
20. Ilustrasi Array
Penjelasan :
Nama array adalah bil.
bil[0] Terdiri dari 5 element.
bil[1] Element= 3,4,5,6,7
index = 0,1,2,3,4
(panjang array (n) =5)
bil[4] – data 3 disimpan pada element
index ke-0
– data 4, disimpan pada element
element index index ke-1
– data 5 (element index ke-?)
– data terakhir (element index
ke-?)
int bil [5] = 3, 4, 5, 6, 7 ;
21. Deklarasi (Array 1 dimensi)
• Bentuk penulisan perintah :
tipe_data nama_array [jumlah_maks_data];
– tipe_data : tipe data yang ada di C/C++, contoh : int, float, char,
dll.
– nama_array : identifier, aturan sama seperti aturan penamaan
variabel.
– jumlah_maks_data : banyak data yang disimpan pada array.
• Contoh deklarasi array : char alfabet[26];
(membuat array bernama alfabet, dengan maksimal data yang bisa
ditampung sebanyak 26 bertipe char)
22. Contoh deklarasi array
double nilai[10];
(membuat array bernama nilai, dengan maksimal data yang bisa
ditampung sebanyak 10 bertipe double)
• Representasi :
nilai[0] nilai[1] nilai[2] nilai[3] nilai[4] nilai[5] nilai[9]
Index element yang bisa diakses dari 0 sampai 9.
24. Latihan
1. Deklarasikan array untuk menyimpan data
angka {1,2,3,4,5,6,7,8,9,10}.
2. Deklarasikan array untuk menyimpan data
{c,i,n,t,a}.
3. Deklarasikan array untuk menyimpan data
{1.2, 3.4, 5.6, 7.8, 9.0}.
25. Inisialisasi (array 1 dimensi)
• Pemberian nilai pada array menggunakan index.
• Bentuk penulisan perintah :
nama_array[index] = nilai;
• Penjelasan :
nama_array = sesuai dengan nama yang telah
dideklarasikan.
index = disesuaikan dengan index element yang ingin
diakses.
nilai = disesuaikan dengan tipe data.
27. Deklarasi + Inisialisasi
• Inisialisasi array juga dapat dilakukan ketika deklarasi.
• Contoh :
int nilai[] = {1,2,3,4,5};
membuat array bernama nilai dengan jumlah
element 5 sekaligus inisialisasi. Dimana :
data element index ke-0 = 1
data element index ke-1 = 2
data element index ke-2 = 3
data element index ke-3 = 4
data element index ke-4 = 5
28. Deklarasi + Inisialisasi
• Contoh deklarasi sekaligus inisialisasi pada array tipe
char.
char alfabet[] = {„a‟,‟b‟,‟c‟};
membuat array bernama nilai dengan jumlah
element 5 sekaligus inisialisasi. Dimana :
data element index ke-0 = a
data element index ke-1 = b
data element index ke-2 = c
30. Pengaksesan Array
• Pengaksesan data pada element array
menggunakan index.
• Bentuk penulisan perintah :
nama_array[index];
• Penjelasan :
nama_array = sesuai dengan nama yang telah
dideklarasikan.
index = disesuaikan dengan index element yang ingin
diakses.
31. Contoh pengaksesan Array
• Menggunakan variabel penampung data :
char huruf;
huruf = alfabet[0];
(variabel huruf berisi data element array index
ke-0 dari array alfabet, yaitu a).
• Menggunakan printf :
printf(“%c”, alfabet[0]);
(akan mencetak huruf a ke-layar).
35. Latihan
1. Buatlah array untuk menyimpan data bilangan
{1,2,3,4,5,6,7,8,9,10} dan tampilkan elemen ke 2 dan
5.
2. Buatlah array bertipe integer yang dapat menampung
data maksimal 5, kemudian tampilkan alamat masing-
masing elemen array tersebut
3. Buatlah array untuk menyimpan data {m,e,r,a,p,i} dan
tampilkan elemen ke 0,1,2.
4. Buatlah array untuk menyimpan data {1.2, 3.4, 5.6,
7.8, 9.0} dan tampilkaan elemen ke awal dan akhir.
36. Latihan
4. Buatlah array untuk menyimpan 50 bilangan ganjil
mulai dari 1 (gunakan perulangan), kemudian
tampilkan isinya ke layar.
5. Buatlah array untuk menyimpan angka 1 s/d 100.
(gunakan perulangan)
6. Buatlah array untuk menyimpan 50 angka genap
pertama. (gunakan perulangan)
7. Buatlah program yang akan membaca 10 karakter
dari user dan disimpan dalam array 10 elemen.
37. Latihan
8. Buatlah sebuah array yang menyimpan
karakter {u,i,n,s,a,g,e,d,e,b,a,n,d,u,n,g}.
Perintahkan user menebak satu karakter
untuk dibandingkan dengan array tersebut.
Jika input user sama dengan salah satu
karakter pada array maka tampilkan index
dari karakter tersebut. Jika tidak ada yang
sama tampilkan pesan “karakter tidak ada”.
39. Kalau lampumu tak bersumbu
dan tak berminyak, jangan
Kalaulah dirimu tidak bayangkan api.
mempraktekkan dan Kalau gelasmu retak, jangan
membuat source code mimpi menuangkan minuman.
nya..... Jangan Kalau mentalmu rapuh, jangan
bayangkan nilai A rindukan rasukan tenaga dalam.
Kalau kaca jiwamu masih kumuh
oleh kotoran-kotoran dunia,
jangan minta cahaya akan
memancarkan dengan jernih
atasmu. (EAN)
40. Array Dua Dimensi
• C/C++ mendukung array multidimensi.
• Array satu dimensi berpadanan dengan vektor
• Array dua dimensi berpadanan dengan matrik
43. Arrray 2 dimensi
• char a[3][5]
• Sama dengan matriks berukuran 3x5
• Pada kenyataan di memory:
44. LATIHAN
• Buatlah Array datamahasiswa, berdimensi 2,
dengan data sebagai berikut
NIM NILAI
29801 75
29802 80
29803 85
45. LATIHAN
2. Buatlah sebuah array dua dimensi untuk menyimpan
sebuah kata bahasa indonesia beserta kata padanan
bahasa inggrisnya.
petunjuk :
– Kata yg disimpan diberikan 5 kata.
– Element 1 digunakan untuk menyimpan kata bahasa
indonesia
– Element 2 digunakan untuk menyimpan kata bahasa
inggris
– Cobalah mengakses kata bahasa inggris dari kata bahasa
indonesia yang dipilih pleh user.
46. Array Dimensi Banyak
• Array ini seperti array dimensi dua tetapi
dapat memiliki ukuran yang lebih besar.
Sebenarnya array ini tidak terlalu sering
digunakan, tetapi sewaktu-waktu jika dimensi
yang dibutuhkan banyak, maka tentu saja
array ini memgang peranan penting
• Contoh :
• int dataktp [2][7][8][5];
47. Referensi
• Rinaldi Munir, “Algoritma dan Pemrograman
dalam Bahasa Pascal dan C”
• Andri Kristanto, Algoritma & Struktur Data
dengan C++, Graha Ilmu, 2009
• Hamonangan Situmorang, “Array dalam
Bahasa C”, Materi Kuliah, STEI ITB
• Dari berbagai sumber
Hinweis der Redaktion
Int angka[10]={1,2,3,4,5,6,7,8,9,10}, char alfabet [5] ={‘c’,i’,’n’,’t’,’a’}, double angka[5]={1.2,3.4,5.6,7.8,9.0}