ALGORITMA DAN
PEMROGRAMAN
Jemy Arieswanto
AGENDA
ARRAY DUA DIMENSI
1. Memahamai penerapan dan konsep Array 2 Dimensi
2. Memahami Penerapan tipe data pada Array 2 Dimensi
3. membuat membuat array 2 dimensi dalam pemrograman
2
1. Kelebihan & Kekurangan Array
Kelebihan Array :
a. Array sangat cocok untuk pengaksesan acak, sembarang komponen di array dapat di akses
secara langsung tanpa melalui komponen- komponen lain.
b. Jika berada di suatu lokasi komponen, maka sangat mudah menerusuri ke komponen-
komponen tetangga, baik komponen pendahulu atau komponen penerus.
c. Jika komponen - komponen array adalah nilai-nilai independen dan seluruhnya harus
terjaga, maka penggunaan dan penyimpanannya sangat efesien.
3
Kekurangan Array :
a. Array harus bertipe homogen, kita tidak dapat mempunyai aray dimana satu komponen
adalah karakter, komponen lain bilangan, dan komponen lain adalah tipe-tipe lain.
b. Kebanyakan Bahasa pemograman mengimplementasikan array static yang sulit diubah
ukurannya di waktu eksekusi
1) Tidak efesien dalam penggunaan memori
2) Menyimpan banyak waktu komputasi
3) Pada suatu aplikasi, representasi statis tidak dimungkinkan
4
2. Definisi
Jika sebelumnya telah di jelaskan perihal array 1 dimensi, yakni bahwa array 1 dimensi
merupakan metode yang di gunakan untuk menampung sejumlah data dalam bentuk
numerik maupun non numerik, Array dua dimensi biasa disebut sebagai array yang
mempunyai dua subskrip yaitu baris dan kolom, array dua dimensi adalah array yang terdiri
dari n buah baris dan m buah kolom. Dimana elemen pertama menunjukan baris dan elemen
kedua menunjukan kolom.
5
Array dua dimensi yang sering digambarkan sebagai sebuah matriks,
merupakan perluasan dari sebuah array satu dimensi. Jika array satu
dimensi hanya terdiri dari sebuah baris dengan beberapa kolom elemen
maka array dua dimensi terdiri dari beberapa baris dan beberapa kolom
elemen yang bertipe sama sehingga dapat di gambarkan seperti ini :
int B[9][5];
Array dua dimensi ini, misalnya mengilustrasikan sebuah bangunan terdiri
dari 9 lantai dan masing-masing terdiri dari 5 ruangan. disebut dua
dimensi karena menunjukan sebuah ruangan diperlukan dua penunjuk
yaitu nomor lantai dan nomor ruang.
6
Contoh :
Sebuah matrik X berukuran 2x3 dapat dideklarasikan sebagai
berikut :
int X [2] [3] = {{11, 7, 4} , {12, 3, 9}};
Yang akan menempati lokasi memori dengan susunan berikut :
7
Contoh Program 1 : Output Program 1 :
8
Contoh Program 1 :
i i j data[i,j]
0 1 2 0 0 1
j j j 0 1 2
0 1 2 0 1 2 0 1 2
0 2 3
1 0 4
1 1 5
1 2 6
2 0 7
2 1 8
9
2 2 9
Contoh Program 2 :
10
Penjelasan :
Dari source code dan table diatas untuk matriks A, inputannya adalah 234 543, sedangkan matriks B inputannya adalah 111
220. 0 yang mempunyai arti tempat yang ada untuk kolom ketiga dari baris kedua tidak diisi, dan pada matriks C disini kita
bisa melihat bahwa pada baris pertama kolom ketiga data tidak diisi dan dianggap 0 dan pada baris kedua kolom kedua dan
ketiga juga tidak diisi juga diisi 0.
11
Contoh Program 3 :
12
i j data[i,j] x
Penjelasan Program 3 :
0 0 1 0+1=1
13
i j data[i,j] x
Penjelasan Program 3 :
0 0 1 0+1=1
0 1 2 1+2=3
14
i j data[i,j] x
Penjelasan Program 3 :
0 0 1 0+1=1
0 1 2 1+2=3
0 2 3 3+3=6
15
i j data[i,j] x
Penjelasan Program 3 :
0 0 1 0+1=1
0 1 2 1+2=3
0 2 3 3+3=6
1 0 4 0+4=4
16
i j data[i,j] x
Penjelasan Program 3 :
0 0 1 0+1=1
0 1 2 1+2=3
0 2 3 3+3=6
1 0 4 0+4=4
1 1 5 4+5=9
17
i j data[i,j] x
Penjelasan Program 3 :
0 0 1 0+1=1
0 1 2 1+2=3
0 2 3 3+3=6
1 0 4 0+4=4
1 1 5 4+5=9
1 2 6 9+6=15
18
i j data[i,j] x
Penjelasan Program 3 :
0 0 1 0+1=1
0 1 2 1+2=3
0 2 3 3+3=6
1 0 4 0+4=4
1 1 5 4+5=9
1 2 6 9+6=15
2 0 7 0+7=7
19
i j data[i,j] x
Penjelasan Program 3 :
0 0 1 0+1=1
0 1 2 1+2=3
0 2 3 3+3=6
1 0 4 0+4=4
1 1 5 4+5=9
1 2 6 9+6=15
2 0 7 0+7=7
2 1 8 7+8=15
20
i j data[i,j] x
Penjelasan Program 3 :
0 0 1 0+1=1
0 1 2 1+2=3
0 2 3 3+3=6
1 0 4 0+4=4
1 1 5 4+5=9
1 2 6 9+6=15
2 0 7 0+7=7
2 1 8 7+8=15
2 2 9 15+9=24
21
Penjelasan Program 3 :
Program ini menghitung penjumlahan kolom pada suatu matrik
yang di implementasikan dengan Array/Larik 2 dimensi
22
Contoh Program 4 :
23
i j data[i,j] x[j]
Penjelasan Program 4 :
0 0 1 0+1=1
24
i j data[i,j] x[j]
Penjelasan Program 4 :
0 0 1 0+1=1
0 1 2 0+2=2
25
i j data[i,j] x[j]
Penjelasan Program 4 :
0 0 1 0+1=1
0 1 2 0+2=2
0 2 3 0+3=3
26
i j data[i,j] x[j]
Penjelasan Program 4 :
0 0 1 0+1=1
0 1 2 0+2=2
0 2 3 0+3=3
1 0 4 1+4=5
27
i j data[i,j] x[j]
Penjelasan Program 4 :
0 0 1 0+1=1
0 1 2 0+2=2
0 2 3 0+3=3
1 0 4 1+4=5
1 1 5 2+5=7
28
i j data[i,j] x[j]
Penjelasan Program 4 :
0 0 1 0+1=1
0 1 2 0+2=2
0 2 3 0+3=3
1 0 4 1+4=5
1 1 5 2+5=7
1 2 6 3+6=9
29
i j data[i,j] x[j]
Penjelasan Program 4 :
0 0 1 0+1=1
0 1 2 0+2=2
0 2 3 0+3=3
1 0 4 1+4=5
1 1 5 2+5=7
1 2 6 3+6=9
2 0 7 5+7=12
30
i j data[i,j] x[j]
Penjelasan Program 4 :
0 0 1 0+1=1
0 1 2 0+2=2
0 2 3 0+3=3
1 0 4 1+4=5
1 1 5 2+5=7
1 2 6 3+6=9
2 0 7 5+7=12
2 1 8 7+8=15
31
i j data[i,j] x[j]
Penjelasan Program 4 :
0 0 1 0+1=1
0 1 2 0+2=2
0 2 3 0+3=3
1 0 4 1+4=5
1 1 5 2+5=7
1 2 6 3+6=9
2 0 7 5+7=12
2 1 8 7+8=15
2 2 9 9+9=18
32
Penjelasan Program 4 :
Program ini menghitung penjumlahan baris pada suatu matrik
yang di implementasikan dengan Array/Larik 2 dimensi
33
Contoh Program 5 :
34
i j data[i,j] x
Penjelasan Program 5 :
0 0 1 1*1=1
35
i j data[i,j] x
Penjelasan Program 5 :
0 0 1 1*1=1
0 1 2 1*2=2
36
i j data[i,j] x
Penjelasan Program 5 :
0 0 1 1*1=1
0 1 2 1*2=2
0 2 3 2*3=6
37
i j data[i,j] x
Penjelasan Program 5 :
0 0 1 1*1=1
0 1 2 1*2=2
0 2 3 2*3=6
1 0 4 1*4=4
38
i j data[i,j] x
Penjelasan Program 5 :
0 0 1 1*1=1
0 1 2 1*2=2
0 2 3 2*3=6
1 0 4 1*4=4
1 1 5 4*5=20
39
i j data[i,j] x
Penjelasan Program 5 :
0 0 1 1*1=1
0 1 2 1*2=2
0 2 3 2*3=6
1 0 4 1*4=4
1 1 5 4*5=20
1 2 6 20*6=120
40
i j data[i,j] x
Penjelasan Program 5 :
0 0 1 1*1=1
0 1 2 1*2=2
0 2 3 2*3=6
1 0 4 1*4=4
1 1 5 4*5=20
1 2 6 20*6=120
2 0 7 1*7=7
41
i j data[i,j] x
Penjelasan Program 5 :
0 0 1 1*1=1
0 1 2 1*2=2
0 2 3 2*3=6
1 0 4 1*4=4
1 1 5 4*5=20
1 2 6 20*6=120
2 0 7 1*7=7
2 1 8 7*8=56
42
i j data[i,j] x
Penjelasan Program 5 :
0 0 1 1*1=1
0 1 2 1*2=2
0 2 3 2*3=6
1 0 4 1*4=4
1 1 5 4*5=20
1 2 6 20*6=120
2 0 7 1*7=7
2 1 8 7*8=56
2 2 9 56*9=504
43
Penjelasan Program 5 :
Program ini menghitung perkalian kolom pada suatu matrik yang
di implementasikan dengan Array/Larik 2 dimensi
44
Contoh Program 6 :
45
Output Program 6 :
46
Contoh Program 7 :
47
Penjelasan Program 7 : i j data[i,j] x
0 0 1 0+1=1
48
Penjelasan Program 7 : i j data[i,j] x
0 0 1 0+1=1
0 1 2 1+2=3
49
Penjelasan Program 7 : i j data[i,j] x
0 0 1 0+1=1
0 1 2 1+2=3
0 2 3 3+3=6
50
Penjelasan Program 7 : i j data[i,j] x
0 0 1 0+1=1
0 1 2 1+2=3
0 2 3 3+3=6
1 0 4 6+4=10
51
Penjelasan Program 7 : i j data[i,j] x
0 0 1 0+1=1
0 1 2 1+2=3
0 2 3 3+3=6
1 0 4 6+4=10
1 1 5 10+5=15
52
Penjelasan Program 7 : i j data[i,j] x
0 0 1 0+1=1
0 1 2 1+2=3
0 2 3 3+3=6
1 0 4 6+4=10
1 1 5 10+5=15
1 2 6 15+6=21
53
Penjelasan Program 7 : i j data[i,j] x
0 0 1 0+1=1
0 1 2 1+2=3
0 2 3 3+3=6
1 0 4 6+4=10
1 1 5 10+5=15
1 2 6 15+6=21
2 0 7 21+7=28
54
Penjelasan Program 7 : i j data[i,j] x
0 0 1 0+1=1
0 1 2 1+2=3
0 2 3 3+3=6
1 0 4 6+4=10
1 1 5 10+5=15
1 2 6 15+6=21
2 0 7 21+7=28
2 1 8 28+8=36
55
Penjelasan Program 7 : i j data[i,j] x
0 0 1 0+1=1
0 1 2 1+2=3
0 2 3 3+3=6
1 0 4 6+4=10
1 1 5 10+5=15
1 2 6 15+6=21
2 0 7 21+7=28
2 1 8 28+8=36
2 2 9 36+9=45
56
Contoh Program 8 :
57
Output Program 8 :
58
Output Program 8 :
59
Kasus Diagonal Matrik
Tampilkan nilai diagonal matrik berikut!
60
Kasus Diagonal Matrik
61
Kasus Diagonal Matrik
i data[i][i]
0 data[0][0] = 1
62
Kasus Diagonal Matrik
i data[i][i]
0 data[0][0] = 1
1 data[1][1] = 5
63
Kasus Diagonal Matrik
i data[i][i]
0 data[0][0] = 1
1 data[1][1] = 5
2 data[2][2] = 9
64
Referensi
A.S, R. (2018). LOGIKA ALGORITMA dan PEMROGRAMAN [Link]: MODULA.
Charibaldi, N. (2004). Modul Kuliah Algoritma Pemrograman II Edisi [Link].
Davis, S. R. (2014). C++ For Dummies (7th ed.). John Wiley & Sons, Inc.
Deitel, P., & Deitel, H. (2014). C++ How To Program (9th ed.). United State of
America:Pearson.
Munir, R. (2005). Algoritma dan Pemrograman dalam Bahasa Pascal dan C. Bandung:
Penerbit Informatika.
Sjukani, M. (2014). Algoritma dan Struktur Data 1 dengan C, C++ dan Java (Edisi 9 ed.).
Jakarta: MItra Wacana Media.
65
END OF S L I D E
ALGORITMA &
31
STRUKTUR DATA