Top Banner
ALGORITMA DAN PEMROGRAMAN 2 3 SKS By : Sri Rezeki Candra Nursari
24

ALGORITMA DAN PEMROGRAMAN 2 · PDF fileMATERI • Teks/string • ... • Suatu metode pengurutan yang membandingkan ... Kalang pertama: melakukan pengulangan dari 2 sampai dengan

Feb 14, 2018

Download

Documents

doantu
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: ALGORITMA DAN PEMROGRAMAN 2 · PDF fileMATERI • Teks/string • ... • Suatu metode pengurutan yang membandingkan ... Kalang pertama: melakukan pengulangan dari 2 sampai dengan

ALGORITMA DAN PEMROGRAMAN 2

3 SKS By : Sri Rezeki Candra Nursari

Page 2: ALGORITMA DAN PEMROGRAMAN 2 · PDF fileMATERI • Teks/string • ... • Suatu metode pengurutan yang membandingkan ... Kalang pertama: melakukan pengulangan dari 2 sampai dengan

MATERI

• Teks/string• Pointer• File• Struktur• Kelas/Class• Konstruktor dan

Destruktor• Kelas dan Obyek

• Overloading Operator• Inheritance (Pewarisan)• Polimorfisme • Template Fungsi dan

Kelas• Sort• Search

Page 3: ALGORITMA DAN PEMROGRAMAN 2 · PDF fileMATERI • Teks/string • ... • Suatu metode pengurutan yang membandingkan ... Kalang pertama: melakukan pengulangan dari 2 sampai dengan

BUBBLE SORT

Pertemuan 14

3 SKS

Page 4: ALGORITMA DAN PEMROGRAMAN 2 · PDF fileMATERI • Teks/string • ... • Suatu metode pengurutan yang membandingkan ... Kalang pertama: melakukan pengulangan dari 2 sampai dengan

Bubble Sort (Metode Gelembung)

• Disebut juga dengan metode penukaran (exchange sort)

• Metode pengurutan data dengan cara membandingkan masing-masing data, kemudian dilakukan penukaran jika perlu

Page 5: ALGORITMA DAN PEMROGRAMAN 2 · PDF fileMATERI • Teks/string • ... • Suatu metode pengurutan yang membandingkan ... Kalang pertama: melakukan pengulangan dari 2 sampai dengan

BUBBLE SORT• Suatu metode pengurutan yang membandingkan

elemen yang sekarang dengan elemen berikutnya. • Apabila elemen yang sekarang > elemen berikutnya,

maka posisinya ditukar, kalau tidak, tidak perlu ditukar.

• Contoh : Urutkan data22 7 66 24 5 63 23 7 3– Kita definisikan data sebanyak 9 buah di dalam Array. Dan data

tersebut sebelum dibandingkan satu dengan yang lain ditampilkan apa adanya terlebih dahulu dengan proses :

int numlist[9] = {22, 7, 66, 24, 5, 63, 23, 7, 3};int swap;cout <<"DATA SEBELUM DIURUTKAN - BUBBLE SORT : \n";for(int ctr=0; ctr<9; ctr++)

Page 6: ALGORITMA DAN PEMROGRAMAN 2 · PDF fileMATERI • Teks/string • ... • Suatu metode pengurutan yang membandingkan ... Kalang pertama: melakukan pengulangan dari 2 sampai dengan

BUBBLE SORT– Kemudian data tersebut mulai dibandingkan dari data

pertama sampai data terakhir, sehingga dihasilkan data urut secara Ascending. Prosesnya sebagai berikut :

if (numlist[ii] > numlist[ii+1]){swap = numlist[ii];numlist[ii] = numlist[ii+1];numlist[ii+1] = swap;}

– Dan data yang telah urut ditampilkan sengan proses sebagai berikut :

for(int iii=0; iii<9; iii++)cout<<setw ( 3 ) << numlist[iii];cout<<endl<<endl;

Page 7: ALGORITMA DAN PEMROGRAMAN 2 · PDF fileMATERI • Teks/string • ... • Suatu metode pengurutan yang membandingkan ... Kalang pertama: melakukan pengulangan dari 2 sampai dengan

Bubble Sort (Metode Gelembung)

• Proses pengurutan dengan metode gelembung menggunakan dengan dua kalang :

1. Kalang pertama: melakukan pengulangan dari 2 sampai dengan N-1 (misalkan dengan variabel i), sedangkan Kalang kedua: dari N sampai dengan i (misalkan dengan variabel j)

2. Pada masing-masing pengulangan, data ke(j-1) dibandingkan dengan data ke j

3. Apabila data ke (j-1) > data ke j, kedua data ini ditukar

Page 8: ALGORITMA DAN PEMROGRAMAN 2 · PDF fileMATERI • Teks/string • ... • Suatu metode pengurutan yang membandingkan ... Kalang pertama: melakukan pengulangan dari 2 sampai dengan

Bubble Sort(Metode Gelembung)

• Algoritmanya sebagai berikut :1. i 22. Selama (i <= N-1) kerjakan baris 3 s.d. 73. j N4. Selama (j >= i) kerjakan baris 5 s.d. 75. Jika (data[j-1] > data[j]) maka tukar data[j-1] dengan

data[j] 6. j j - 17. i i + 1

Page 9: ALGORITMA DAN PEMROGRAMAN 2 · PDF fileMATERI • Teks/string • ... • Suatu metode pengurutan yang membandingkan ... Kalang pertama: melakukan pengulangan dari 2 sampai dengan

Pengurutan Bubble SortItera

siData Data Data Data Data Data Data Data Data[1] [2] [3] [4] [5] [6] [7] [8] [9]

Awal 65 2 44 26 19 22 5 3 12i=2 65 2 44 26 19 22 5 3 12

j=9 65 2 44 26 19 22 5 3 12j=8 65 2 44 26 19 22 3 5 12j=7 65 2 44 26 19 3 22 5 12j=6 65 2 44 26 3 19 22 5 12j=5 65 2 44 3 26 19 22 5 12j=4 65 2 3 44 26 19 22 5 12j=3 65 2 3 44 26 19 22 5 12j=2 2 65 3 44 26 19 22 5 12

Page 10: ALGORITMA DAN PEMROGRAMAN 2 · PDF fileMATERI • Teks/string • ... • Suatu metode pengurutan yang membandingkan ... Kalang pertama: melakukan pengulangan dari 2 sampai dengan

Pengurutan Bubble Sort

Iterasi

Data Data Data Data Data Data Data Data Data[1] [2] [3] [4] [5] [6] [7] [8] [9]

i=3 2 65 3 44 26 19 22 5 12j=9 2 65 3 44 26 19 22 5 12j=8 2 65 3 44 26 19 5 22 12j=7 2 65 3 44 26 5 19 22 12j=6 2 65 3 44 5 26 19 22 12j=5 2 65 3 5 44 26 19 22 12j=4 2 65 3 5 44 26 19 22 12j=3 2 3 65 5 44 26 19 22 12

Page 11: ALGORITMA DAN PEMROGRAMAN 2 · PDF fileMATERI • Teks/string • ... • Suatu metode pengurutan yang membandingkan ... Kalang pertama: melakukan pengulangan dari 2 sampai dengan

Pengurutan Bubble SortItera

siData Data Data Data Data Data Data Data Data[1] [2] [3] [4] [5] [6] [7] [8] [9]

i=4 2 3 65 5 44 26 19 22 12j=9 2 3 65 5 44 26 19 12 22j=8 2 3 65 5 44 26 12 19 22j=7 2 3 65 5 44 12 26 19 22j=6 2 3 65 5 12 44 26 19 22j=5 2 3 65 5 12 44 26 19 22j=4 2 3 5 65 12 44 26 19 22

Page 12: ALGORITMA DAN PEMROGRAMAN 2 · PDF fileMATERI • Teks/string • ... • Suatu metode pengurutan yang membandingkan ... Kalang pertama: melakukan pengulangan dari 2 sampai dengan

Pengurutan Bubble Sort

Iterasi

Data Data Data Data Data Data Data Data Data[1] [2] [3] [4] [5] [6] [7] [8] [9]

i=5 2 3 5 65 12 44 26 19 22j=9 2 3 5 65 12 44 26 19 22j=8 2 3 5 65 12 44 19 26 22j=7 2 3 5 65 12 19 44 26 22j=6 2 3 5 65 12 19 44 26 22j=5 2 3 5 12 65 19 44 26 22

Page 13: ALGORITMA DAN PEMROGRAMAN 2 · PDF fileMATERI • Teks/string • ... • Suatu metode pengurutan yang membandingkan ... Kalang pertama: melakukan pengulangan dari 2 sampai dengan

Pengurutan Bubble SortItera

siData Data Data Data Data Data Data Data Data

[1] [2] [3] [4] [5] [6] [7] [8] [9]i=6 2 3 5 12 65 19 44 26 22

j=9 2 3 5 12 65 19 44 22 26j=8 2 3 5 12 65 19 22 44 26j=7 2 3 5 12 65 19 22 44 26j=6 2 3 5 12 19 65 22 44 26

Iterasi

Data Data Data Data Data Data Data Data Data[1] [2] [3] [4] [5] [6] [7] [8] [9]

i=7 2 3 5 12 19 65 22 44 26j=9 2 3 5 12 19 65 22 26 44j=8 2 3 5 12 19 65 22 26 44j=7 2 3 5 12 19 22 65 26 44

Page 14: ALGORITMA DAN PEMROGRAMAN 2 · PDF fileMATERI • Teks/string • ... • Suatu metode pengurutan yang membandingkan ... Kalang pertama: melakukan pengulangan dari 2 sampai dengan

Pengurutan Bubble Sort

Iterasi

Data Data Data Data Data Data Data Data Data[1] [2] [3] [4] [5] [6] [7] [8] [9]

i=8 2 3 5 12 19 22 65 26 44j=9 2 3 5 12 19 22 65 26 44j=8 2 3 5 12 19 22 26 65 44

Akhir 2 3 5 12 19 22 26 44 65

Page 15: ALGORITMA DAN PEMROGRAMAN 2 · PDF fileMATERI • Teks/string • ... • Suatu metode pengurutan yang membandingkan ... Kalang pertama: melakukan pengulangan dari 2 sampai dengan

Program – Bubble Sort

Page 16: ALGORITMA DAN PEMROGRAMAN 2 · PDF fileMATERI • Teks/string • ... • Suatu metode pengurutan yang membandingkan ... Kalang pertama: melakukan pengulangan dari 2 sampai dengan

Algoritma.........?????Pseudocode.......??????

Page 17: ALGORITMA DAN PEMROGRAMAN 2 · PDF fileMATERI • Teks/string • ... • Suatu metode pengurutan yang membandingkan ... Kalang pertama: melakukan pengulangan dari 2 sampai dengan

Tugas :• Berdasarkan soal Anda masing,

masing buat Program, Pseudocode, Algoritma dengan menggunakan class dan konstruktor

• Kumpulkan tanggal 15 Juni 2015

Page 18: ALGORITMA DAN PEMROGRAMAN 2 · PDF fileMATERI • Teks/string • ... • Suatu metode pengurutan yang membandingkan ... Kalang pertama: melakukan pengulangan dari 2 sampai dengan

Buat Manual Bubble Sort secara Acending & Descending

1. 24, 13, 7, 5, 10, 5, 3, 7, 292. 5, 9, 12, 21, 10, 5, 3, 7, 293. 10, 22, 6, 22, 10, 5, 3, 7, 294. 1, 12, 12, 3, 7, 29, 7, 28, 85. 19, 19, 12, 3, 7, 29, 7, 28, 86. 9, 24, 2, 7, 3, 7, 29, 7, 28, 87. 5, 8, 10, 24, 13, 7, 5, 10, 5,8. 6, 19, 4, 24, 13, 7, 5, 10, 5,9. 24, 11, 5, 24, 13, 7, 5, 10, 5,10.11,10, 5, 3, 7, 29, 7, 28, 8

Page 19: ALGORITMA DAN PEMROGRAMAN 2 · PDF fileMATERI • Teks/string • ... • Suatu metode pengurutan yang membandingkan ... Kalang pertama: melakukan pengulangan dari 2 sampai dengan

Pengurutan Bubble Sort - DescendingItera

siData Data Data Data Data Data Data Data Data[1] [2] [3] [4] [5] [6] [7] [8] [9]

Awal 11 10 5 3 7 29 7 28 8i=2 11 10 5 3 7 29 7 28 8

j=9 11 10 5 3 7 29 7 28 8j=8 11 10 5 3 7 29 28 7 8j=7 11 10 5 3 7 29 28 7 8j=6 11 10 5 3 29 7 28 7 8j=5 11 10 5 29 3 7 28 7 8j=4 11 10 29 5 3 7 28 7 8j=3 11 29 10 5 3 7 28 7 8j=2 29 11 10 5 3 7 28 7 8

Page 20: ALGORITMA DAN PEMROGRAMAN 2 · PDF fileMATERI • Teks/string • ... • Suatu metode pengurutan yang membandingkan ... Kalang pertama: melakukan pengulangan dari 2 sampai dengan

Pengurutan Bubble Sort - Descending

Iterasi

Data Data Data Data Data Data Data Data Data[1] [2] [3] [4] [5] [6] [7] [8] [9]

i=3 29 11 10 5 3 7 28 7 8j=9 29 11 10 5 3 7 28 8 7j=8 29 11 10 5 3 7 28 8 7j=7 29 11 10 5 3 28 7 8 7j=6 29 11 10 5 28 3 7 8 7j=5 29 11 10 28 5 3 7 8 7j=4 29 11 28 10 5 3 7 8 7j=3 29 28 11 10 5 3 7 8 7

Page 21: ALGORITMA DAN PEMROGRAMAN 2 · PDF fileMATERI • Teks/string • ... • Suatu metode pengurutan yang membandingkan ... Kalang pertama: melakukan pengulangan dari 2 sampai dengan

Pengurutan Bubble SortItera

siData Data Data Data Data Data Data Data Data[1] [2] [3] [4] [5] [6] [7] [8] [9]

i=4 29 28 11 10 5 3 7 8 7j=9 29 28 11 10 5 3 7 8 7j=8 29 28 11 10 5 3 8 7 7j=7 29 28 11 10 5 8 3 7 7j=6 29 28 11 10 8 5 3 7 7j=5 29 28 11 10 8 5 3 7 7j=4 29 28 11 10 8 5 3 7 7

Page 22: ALGORITMA DAN PEMROGRAMAN 2 · PDF fileMATERI • Teks/string • ... • Suatu metode pengurutan yang membandingkan ... Kalang pertama: melakukan pengulangan dari 2 sampai dengan

Pengurutan Bubble Sort

Iterasi

Data Data Data Data Data Data Data Data Data[1] [2] [3] [4] [5] [6] [7] [8] [9]

i=5 29 28 11 10 8 5 3 7 7j=9 29 28 11 10 8 5 3 7 7j=8 29 28 11 10 8 5 7 3 7j=7 29 28 11 10 8 7 5 3 7j=6 29 28 11 10 8 7 5 3 7j=5 29 28 11 10 8 7 5 3 7

Page 23: ALGORITMA DAN PEMROGRAMAN 2 · PDF fileMATERI • Teks/string • ... • Suatu metode pengurutan yang membandingkan ... Kalang pertama: melakukan pengulangan dari 2 sampai dengan

Pengurutan Bubble SortItera

siData Data Data Data Data Data Data Data Data

[1] [2] [3] [4] [5] [6] [7] [8] [9]i=6 29 28 11 10 8 7 5 3 7

j=9 29 28 11 10 8 7 5 7 3j=8 29 28 11 10 8 7 7 5 3j=7 29 28 11 10 8 7 7 5 3j=6 29 28 11 10 8 7 7 5 3

Iterasi

Data Data Data Data Data Data Data Data Data[1] [2] [3] [4] [5] [6] [7] [8] [9]

i=7 29 28 11 10 8 7 7 5 3j=9 29 28 11 10 8 7 7 5 3j=8 29 28 11 10 8 7 7 5 3j=7 29 28 11 10 8 7 7 5 3

Page 24: ALGORITMA DAN PEMROGRAMAN 2 · PDF fileMATERI • Teks/string • ... • Suatu metode pengurutan yang membandingkan ... Kalang pertama: melakukan pengulangan dari 2 sampai dengan

Pengurutan Bubble Sort - descending

Iterasi

Data Data Data Data Data Data Data Data Data[1] [2] [3] [4] [5] [6] [7] [8] [9]

i=8 29 28 11 10 8 7 7 5 3j=9 29 28 11 10 8 7 7 5 3j=8 29 28 11 10 8 7 7 5 3

Akhir 29 28 11 10 8 7 7 5 3