Upload presentasi
Presentasi sedang didownload. Silahkan tunggu
Diterbitkan olehDevi Tanuwidjaja Telah diubah "7 tahun yang lalu
1
Kuliah Ke - 2 Array dan Matriks (Bab 2)
Informatics Engineering Department TRUNOJOYO UNIVERSITY
2
Apa itu Struktur Data ? PROGRAM Review ... ALGO RITMA STRUKTUR DATA
3
Algoritma ….. deskripsi langkah-langkah penyelesaian masalah yang tersusun secara logis Review ... ditulis dengan notasi khusus notasi mudah dimengerti notasi dapat diterjemahkan menjadi sintaks suatu bahasa pemrograman
4
model logika/matematik yang secara khusus mengorganisasi data
Struktur Data ….. model logika/matematik yang secara khusus mengorganisasi data Review ...
5
Contoh Struktur Data ….. Review ...
6
Contoh Struktur Data ….. Review ...
7
Tempat Penyimpanan Data
Struktur Data ….. Tempat Penyimpanan Data Operasi terhadap data Review ... Traversal (Traversing) : mengunjungi setiap elemen SD Pencarian (Searching) : menemukan elemen/lokasi pada SD Penyisipan (Inserting) : menambah elemen baru pada SD Penghapusan (Deleting) : menghapus elemen dari SD
8
Struktur Data : Array / Larik
Tujuan Membahas struktur data yang paling sederhana dan mudah pengoperasiannya, yaitu array / larik. Review ... Definisi struktur data yang mengacu pada sekumpulan elemen yang diakses melalui indeks
9
KELEBIHAN & KEKURANGAN
Array / Larik KELEBIHAN - Struktur Data paling mudah - Memori ekonomis, bila semua elemen terisi - Waktu akses sama ke setiap elemen Review ... KEKURANGAN - Boros memori jika banyak elemen yang tidak digunakan - Struktur Data Statis
10
PROSES LARIK Review ... Program Proses_Larik KAMUS
Array / Larik Program Proses_Larik KAMUS Const : N = 8 {jumlah elemen larik} Indeks : integer A : array [1..N] of integer {deklarasi larik A dengan tipe data integer} ALGORITMA For Indeks 1 to N do PROSES LARIK Endfor Review ... Catatan : Tipe Data sejenis (homogen) Indeks data memiliki keterurutan
11
CONTOH PROSES Review ... A[Indeks]=0 ALGORITMA For Indeks 1 to N do
Array / Larik ALGORITMA For Indeks 1 to N do PROSES LARIK Endfor Review ... A[Indeks]=0 Mengisi elemen larik dengan 0 (inisialisasi) Mengisi elemen larik dari piranti masukan Mencetak elemen larik ke piranti keluaran Input A[Indeks] Print A[Indeks]
12
INISIALISASI Review ... ALGORITMA For Indeks 1 to 8 do A[Indeks] = 0
Array / Larik ALGORITMA For Indeks 1 to 8 do A[Indeks] = 0 Endfor Review ...
13
CETAK ELEMEN 4 2 9 7 5 7 3 1 Review ... 1 3 5 7 2 9 4 7 ALGORITMA
Array / Larik ALGORITMA For Indeks 1 to 8 do Print A[Indeks] Endfor 4 2 9 7 5 7 3 1 Review ... 1 3 5 7 2 9 4 7
14
PROSES BENTUK LAIN Review ... 1 3 5 7 2 9 4 7 ALGORITMA
Array / Larik ALGORITMA For Indeks 1 to 8 do Proses Larik Endfor Review ... q Mencari bilangan maksimun/minimum pada larik q Menjumlahkan nilai seluruh elemen larik q Membuat rata-rata nilai seluruh elemen larik q Mencari nilai tertentu pada larik 1 3 5 7 2 9 4 7
15
Cari Bilangan Maksimum
Array / Larik ALGORITMA Maks = A[1] For Indeks 2 to 8 do If A[Indeks] > Maks then Maks = A[Indeks] Endfor Print Maks Review ... 1 3 5 7 2 9 4
16
HITUNG PANJANG Panjang = UB - LB + 1 dimana:
Array / Larik Panjang = UB - LB + 1 dimana: UB - upper bound ( indeks terbesar) LB - lower bound (indeks terkecil) Contoh : Seorang pedang mobil menggunakan larik untuk menyimpan data penjualan dari tahun 1990 sampai dengan tahun Berapa panjang (jumlah elemen) larik yang harus disediakan? LB = 1990 UB = 2001 Jadi panjang = UB – LB + 1 = 2001 – = 12
17
PENGALAMATAN LOK(LA[K]) = Awal(LA) + W(K - LB) di mana:
Array / Larik LOK(LA[K]) = Awal(LA) + W(K - LB) di mana: LOK(LA[K]) – lokasi elemen dengan indeks K, yang dicari K Indeks yang dicari Awal (LA) Lokasi awal dari larik W – jumlah byte untuk menyimpan 1 elemen larik LB -- lower bound / batas bawah
18
PENGALAMATAN LOK(LA[K]) = Awal(LA) + W(K - LB)
Array / Larik LOK(LA[K]) = Awal(LA) + W(K - LB) Contoh: Misalkan Awal (Jual) = 100 dan W= 4, maka LOK (JUAL[1990]) = 100 LOK (JUAL[1991]) = 104 LOK (JUAL[1992]) = 108 Berapa lokasi JUAL[2000] ? untuk mendapat lokasi tersebut LOK(LA[K]) = Awal(LA) + W(K - LB) = * (2000 – 1990) = 140
19
PENGALAMATAN Array / Larik Array Awal - 100 Jual(1990) 104 Jual(1991)
Lokasi Memori Array Awal Jual(1990) 104 Jual(1991) 108 Jual(1992) 112 Jual(1993) 116 Jual(1994) Jual(1995) 124 Jual(1996) 128 Jual(1997) 132 Jual(1998) 136 Jual(1999) 140 Jual(2000)
20
Kita lanjutkan untuk yang satu ini …..
21
Struktur Data : Matriks
Definisi struktur data yang mengacu pada sekumpulan elemen yang diakses melalui indeks Array dua dimensi, yang memiliki indeks baris dan kolom
22
KELEBIHAN & KEKURANGAN
Matriks KELEBIHAN - Struktur Data paling mudah - Memori ekonomis, bila semua elemen terisi - Waktu akses sama ke setiap elemen KEKURANGAN - Boros memori jika banyak elemen yang tidak digunakan - Struktur Data Statis
23
Kamus Data KAMUS A : array [1..2, 1..3] of integer {ukuran 2x3}
Matriks KAMUS A : array [1..2, 1..3] of integer {ukuran 2x3} Nilai : array [1..50,1..4] of real {ukuran 50x4} Type WAKTU : record < JJ : integer [0..23], MM : integer [0..59], DD : integer [0..59] > Absensi : array [1..100, 1..2] of Waktu Catatan : Tipe Data sejenis (homogen) Indeks data memiliki keterurutan
24
Proses Matriks Elemen Matriks diproses Baris demi Baris
Elemen Matriks diproses Kolom demi Kolom
25
PROSES MATRIKS Endfor Matriks Program Proses_Matrik_BarisdemiBaris
KAMUS Const : M = 2 {jumlah baris matrik} Const : N = 3 {jumlah kolom array} Baris, Kolom : integer A : array [1..M, 1..N] of integer ALGORITMA For Baris 1 to M do For Kolom 1 to N do PROSES MATRIK Endfor Baris demi Baris
26
PROSES MATRIKS Matriks Baris demi Baris 18 3 69 24 8 70
27
PROSES MATRIKS Matriks Program Proses_Matrik_KolomdemiKolom KAMUS
Const : M = 2 {jumlah baris matrik} Const : N = 3 {jumlah kolom array} Baris, Kolom : integer A : array [1..M, 1..N] of integer ALGORITMA For Kolom 1 to N do For Baris 1 to M do PROSES MATRIK Endfor Kolom demi Kolom
28
PROSES MATRIKS Matriks Kolom demi Kolom 18 3 69 24 8 70
29
CONTOH PROSES ALGORITMA For Baris 1 to M do For Kolom 1 to N do
Matriks ALGORITMA For Baris 1 to M do For Kolom 1 to N do PROSES MATRIKS Endfor Mengisi elemen matriks dengan 0 (inisialisasi) Mengisi elemen matriks dari piranti masukan Mencetak elemen matriks ke piranti keluaran A[Baris,Kolom]=0 Input A[Baris,Kolom] Print A[Baris,Kolom]
30
INISIALISASI For Baris = 1 to 2 do For Kolom = 1 to 3 do
Matriks For Baris = 1 to 2 do For Kolom = 1 to 3 do A(Baris, Kolom) = 0 Endfor
31
Isi dengan 1,2,3,4,5,6 1 2 3 4 5 6 Indeks = 1 For Baris = 1 to 2 do
Matriks Indeks = 1 For Baris = 1 to 2 do For Kolom = 1 to 3 do A(Baris, Kolom) = Indeks Indeks = Indeks + 1 Endfor 1 2 3 4 5 6
32
Isi dengan 1,3,5,7,9,11 Matriks Indeks = ??? For Baris = 1 to 2 do For Kolom = 1 to 3 do A(Baris, Kolom) = ??? Endfor 1 3 5 7 9 13
33
CETAK ELEMEN 8 70 24 18 69 3 18 3 69 24 8 70 For Baris = 1 to 2 do
Matriks For Baris = 1 to 2 do For Kolom = 1 to 3 do A(Baris, Kolom) = 0 Endfor 8 70 24 18 69 3 18 3 69 24 8 70
34
PROSES LAINNYA For Baris = 1 to 2 do For Kolom = 1 to 3 do
Matriks For Baris = 1 to 2 do For Kolom = 1 to 3 do A(Baris, Kolom) = ??? ??? Endfor PROSES MATRIK DAPAT DIMODIFIKASI, sbb : q Menjumlahkan nilai pada setiap baris q Membuat rata-rata pada setiap baris atau setiap kolom q Mencari nilai tertentu pada matrik q Menjumlahkan/Mengurangkan dua buah matrik Mengalikan dua buah matrik
35
Menjumlahkan setiap baris
Matriks For Baris = 1 to 2 do TotalBaris = 0 For Kolom = 1 to 3 do TotalBaris = TotalBaris + A[Baris,Kolom] Endfor Print Total Baris 18 3 69 90 24 8 70 102
36
Menjumlahkan C = A + B + For Baris = 1 to 2 do For Kolom = 1 to 3 do
Dua buah Matriks For Baris = 1 to 2 do For Kolom = 1 to 3 do C[Baris,Kolom] =A[Baris,Kolom]+ B[Baris,Kolom] Endfor 18 3 69 24 8 70 1 2 3 4 5 6 +
37
Mengalikan For Baris = 1 to 2 do For Kolom = 1 to 3 do
Matriks For Baris = 1 to 2 do For Kolom = 1 to 3 do C[Baris, Kolom] = 0 For K = 1 to P do C[Baris,Kolom] =C[Baris,Kolom]+ A[Baris,K] * B[K,Kolom] Endfor 18 3 69 24 8 70
38
Minggu depan : - Matriks Jarang - Pengalamatan Matriks
Presentasi serupa
© 2024 SlidePlayer.info Inc.
All rights reserved.