Struktur Data - Efendi2612's Blog | Just another …€¦ · PPT file · Web view ·...
Transcript of Struktur Data - Efendi2612's Blog | Just another …€¦ · PPT file · Web view ·...
ARRAY / LARIK
Array adalah suatu tipe data terstruktur yang berupa sejumlah data sejenis (bertipe data sama) yang jumlahnya tetap dan diberi suatu nama tertentu.
Array dapat berupa array 1 dimensi, 2 dimensi, bahkan n-dimensi.
DEKLARASItipe_data nama_var_array [ukuran];
tipe_data : menyatakan jenis tipe data elemen larik (int, char, float, dll)nama_var_array : menyatakan nama variabel yang dipakai.ukuran : menunjukkan jumlah maksimal elemen larik.
Contoh :Int nilai[6];
Array (Larik) Set item data yang disusun secara baik menjadi
rangkaian dan diacu atau ditunjuk oleh satu identifier Contoh : Nilai = (56 42 89 65 48) . Item data individual dalam array bisa ditunjuk secara
terpisah dengan menyatakan posisinya dalam array itu . * Nilai(1) menunjuk 56 . * Nilai(2) menunjuk 42 .
Bilangan yang ditulis dalam tanda kurung menandakan posisi item individual dalam array (disebut juga subscript / indeks)
Array (Larik)
Variabel bisa digunakan sebagai subscript, misalnya Nilai(i). * Jika i = 2 maka menunjuk ke Nilai(2) yaitu 42 * Jika i = 4 maka menunjuk ke Nilai(4) yaitu 65
Item data individual dalam suatu array sering disebut elemen.
Matriks Array yang hanya berisi bilangan dan tidak ada data
alfabetisnya Klasifikasi Array
* Array 1 dimensi* Array multi dimensi
Array Multi Dimensi
Mempunyai elemen-elemen yang disusun ke dalam baris dan kolom dan digunakan sebagai tabel data
Contoh : Nilai ujian dari mahasiswa satu kelas untukbeberapa mata kuliah bisa ditempatkan dalam array 2 dimensi
Siswa ke B. Inggris Matematik
a (no. baris)
(kolom 1) (kolom 2)
1A(1,1) =
56 A(1,2) =
44 2 A(2,1) =
42 A(2,2) =
36 3 A(3,1) =
89 A(3,2) =
73 4 A(4,1) =
65 A(4,2) =
86
5A(5,1) =
48 A(5,2) =
51
56 44
42 36
89 73
65 86
48 51
A =
A =
Deklarasi Array .
Array 1 dimensi .Variables Nilai: array [1..5] of integerA : array [1..4] of real
Array 2 dimensi. Variables A : array [1..5, 1..2] of integer
Penanganan Array
Metode dasar penanganan array : Mencari nilai terbesar. Mencari nilai terkecil. Menghitung nilai rata-rata. Menghitung nilai total. Menghitung jumlah nilai di bawah rata-rata
Menyortir Array (Sort) . Buble sort. Straight selection sort . Mencari/Meneliti Array (Search) . Linear search
Penanganan Array . Contoh : Nilai ujian mahasiswa akan dibaca
dalam array. Kemudian akan ditampilkan nilai terbesar, nilai terkecil, nilai rata-rata, nilai total, dan jumlah nilai di bawah rata-rata.
Tahapan penanganan array. Input nilai data ke dalam array . Mengkalkulasi nilai terbesar, terkecil, total, dan
rata-rata . Mengkalkulasi jumlah nilai di bawah rata-rata Menampilkan hasilnya (output)
Struktur Data :Struktur Data : Matriks MatriksDefinisi•struktur data yang mengacu pada sekumpulan elemen yang diakses melalui indeks •Array dua dimensi, yang memiliki indeks baris dan kolom
1 8 0 3 6 9
2 4 0 8 7 0
1
Ar ra y B dua di me ns i (ma tr ik s ) :- j uml a h ba ri s 2 , k ol om 3- d a ta 1 8 , 0 3 , 6 9 , 2 4 , 08 , 7 0 .
2
1 2 3
KELEBIHAN & KEKURANGAN
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
MatriksMatriks
Kamus DataMatriksMatriks
Catatan : Tipe Data sejenis (homogen) Indeks data memiliki keterurutan
KAMUSA : 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
Proses Matriks1. Elemen Matriks diproses Baris demi
Baris2. Elemen Matriks diproses Kolom demi
Kolom
1 8 0 3 6 9
2 4 0 8 7 0
1
Ar ra y B dua di me ns i (ma tr ik s ) :- j uml a h ba ri s 2 , k ol om 3- d a ta 1 8 , 0 3 , 6 9 , 2 4 , 08 , 7 0 .
2
1 2 3
PROSES MATRIKSMatriksMatriks
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 Endfor
PROSES MATRIKSMatriksMatriks
1 8 0 3 6 9
2 4 0 8 7 0
1
Ar ra y B dua di me ns i (ma tr ik s ) :- j uml a h ba ri s 2 , k ol om 3- d a ta 1 8 , 0 3 , 6 9 , 2 4 , 08 , 7 0 .
2
1 2 3
18 3 69
24 8 70
PROSES MATRIKSMatriksMatriks
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 Endfor
PROSES MATRIKSMatriksMatriks
1 8 0 3 6 9
2 4 0 8 7 0
1
Ar ra y B dua di me ns i (ma tr ik s ) :- j uml a h ba ri s 2 , k ol om 3- d a ta 1 8 , 0 3 , 6 9 , 2 4 , 08 , 7 0 .
2
1 2 3
18 3 69
24 8 70
CONTOH PROSES MatriksMatriks
Mengisi elemen matriks dengan 0 (inisialisasi)Mengisi elemen matriks dari piranti masukanMencetak elemen matriks ke piranti keluaran
ALGORITMA For Baris 1 to M do For Kolom 1 to N do PROSES MATRIKS Endfor Endfor
INISIALISASIMatriksMatriks
1 8 0 3 6 9
2 4 0 8 7 0
1
Ar ra y B dua di me ns i (ma tr ik s ) :- j uml a h ba ri s 2 , k ol om 3- d a ta 1 8 , 0 3 , 6 9 , 2 4 , 08 , 7 0 .
2
1 2 3
For Baris = 1 to 2 do For Kolom = 1 to 3 do A(Baris, Kolom) = 0A(Baris, Kolom) = 0 EndforEndfor
0 0 00 0 0
Isi dengan 1,2,3,4,5,6MatriksMatriks
1 8 0 3 6 9
2 4 0 8 7 0
1
Ar ra y B dua di me ns i (ma tr ik s ) :- j uml a h ba ri s 2 , k ol om 3- d a ta 1 8 , 0 3 , 6 9 , 2 4 , 08 , 7 0 .
2
1 2 3
Indeks = 1For Baris = 1 to 2 do For Kolom = 1 to 3 do A(Baris, Kolom) = IndeksA(Baris, Kolom) = Indeks
Indeks = Indeks + 1Indeks = Indeks + 1 EndforEndfor
1 2 34 5 6
Isi dengan 1,3,5,7,9,11MatriksMatriks
1 8 0 3 6 9
2 4 0 8 7 0
1
Ar ra y B dua di me ns i (ma tr ik s ) :- j uml a h ba ri s 2 , k ol om 3- d a ta 1 8 , 0 3 , 6 9 , 2 4 , 08 , 7 0 .
2
1 2 3
Indeks = 1For Baris = 1 to 2 do For Kolom = 1 to 3 do A(Baris, Kolom) = indeksA(Baris, Kolom) = indeks
Indeks = indeks+2Indeks = indeks+2 EndforEndfor
1 3 57 9 11
1 8 0 3 6 9
2 4 0 8 7 0
1
Ar ra y B dua di me ns i (ma tr ik s ) :- j uml a h ba ri s 2 , k ol om 3- d a ta 1 8 , 0 3 , 6 9 , 2 4 , 08 , 7 0 .
2
1 2 3
18 3 6924 8 70
CETAK ELEMENMatriksMatriks
For Baris = 1 to 2 do For Kolom = 1 to 3 do A(Baris, Kolom) = 0A(Baris, Kolom) = 0 EndforEndfor
1836924870
PROSES LAINNYAMatriksMatriks
For Baris = 1 to 2 do For Kolom = 1 to 3 do A(Baris, Kolom) = 1A(Baris, Kolom) = 1 EndforEndfor
PROSES MATRIK DAPAT DIMODIFIKASI, sbb : Menjumlahkan nilai pada setiap baris Membuat rata-rata pada setiap baris atau setiap kolom Mencari nilai tertentu pada matrik Menjumlahkan/Mengurangkan dua buah matrik• Mengalikan dua buah matrik
1 8 0 3 6 9
2 4 0 8 7 0
1
Ar ra y B dua di me ns i (ma tr ik s ) :- j uml a h ba ri s 2 , k ol om 3- d a ta 1 8 , 0 3 , 6 9 , 2 4 , 08 , 7 0 .
2
1 2 3
18 3 69
24 8 70
Menjumlahkan setiap barisMatriksMatriksFor Baris = 1 to 2 do
TotalBaris = 0 For Kolom = 1 to 3 do
TotalBaris = TotalBaris + A[Baris,Kolom]
Endfor Print Total BarisEndfor
90
102
1 8 0 3 6 9
2 4 0 8 7 0
1
Ar ra y B dua di me ns i (ma tr ik s ) :- j uml a h ba ri s 2 , k ol om 3- d a ta 1 8 , 0 3 , 6 9 , 2 4 , 08 , 7 0 .
2
1 2 3
18 3 69
24 8 70
Menjumlahkan C = A + BDua buah MatriksDua buah Matriks
For Baris = 1 to 2 do For Kolom = 1 to 3 do
C[Baris,Kolom] =A[Baris,Kolom]+ B[Baris,Kolom]
Endfor Endfor
1 8 0 3 6 9
2 4 0 8 7 0
1
Ar ra y B dua di me ns i (ma tr ik s ) :- j uml a h ba ri s 2 , k ol om 3- d a ta 1 8 , 0 3 , 6 9 , 2 4 , 08 , 7 0 .
2
1 2 3
1 2 3
4 5 6
1 8 0 3 6 9
2 4 0 8 7 0
1
Ar ra y B dua di me ns i (ma tr ik s ) :- j uml a h ba ri s 2 , k ol om 3- d a ta 1 8 , 0 3 , 6 9 , 2 4 , 08 , 7 0 .
2
1 2 3
18 3 69
24 8 70
MengalikanMatriksMatriks
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]x A[Baris,K] x B[K,Kolom] Endfor Endfor Endfor