390 likes | 682 Views
Algoritma. Muḥammad bin Mūsā al-Khawārizmī. ( 780 – 850 M ). Kata algoritma berasal dari latinisasi al-Khawārizmī , Di dunia Barat, ia dikenal sebagai Al-Khawarizmi, Al-Cowarizmi, Al-Ahawizmi, Al-Karismi, Al-Goritmi, Al-Gorismi awalnya menjadi algorisma yang berarti:
E N D
Muḥammad bin Mūsā al-Khawārizmī ( 780 – 850 M ) Kata algoritma berasal dari latinisasi al-Khawārizmī, Di dunia Barat, ia dikenal sebagai Al-Khawarizmi, Al-Cowarizmi, Al-Ahawizmi, Al-Karismi, Al-Goritmi, Al-Gorismi awalnya menjadi algorisma yang berarti: "aturan-aturan aritmetis untuk menyelesaikan persoalan dengan menggunakan bilangan numerik" Abad-18, istilah ini berkembang menjadi algoritma, yang berarti: "prosedur atau urutan langkah yang jelas dan diperlukan untuk menyelesaikan suatu permasalahan"
Algoritma kumpulan perintah yang kebanyakan memiliki langkah pengulangan (iterasi) atau memerlukan keputusan (logika Boolean dan perbandingan), berupa susunan elemen-elemen berdasarkan baris & kolom yang membentuk satu kesatuan Kondisi AWAL Pemecahan MASALAH
Algoritma • Memiliki tipe data: • Integer, double, real (floating point), string, dll • Tiap tipe data memiliki • anggota dengan nilai-nilai tertentu • operasi-operasi yang dapat dilakukan pada tiap anggota tipe data Kondisi AWAL Pemecahan MASALAH
Aspek penting ALGORITMA
int a=6; main() { while(a>5) { cout<<a; a++; } } Bagaimana akhir dari algoritma ini? UNFINITE
Finiteness Algoritma harus berhenti setelah melalui beberapa tahapan (langkah)
Definiteness Setiap langkah harus didefinisikan secara tepat, tidak boleh membingungkan (ambigu)
Algoritma INPUT OUTPUT Sebuah algoritma memiliki satu atau lebih output, yang biasanya bergantung kepada input Sebuah algoritma memiliki nol atau lebih input sebelum dijalankan
Effectiveness Setiap algoritma harus berdaya-guna (sangkil/ efektif)
Case: Fake Coin Problem You have 9 gold coins. All 9 coins look exactly the same but one coin is a fake and is either lighter or heavier than the other 8 coins. You have a scale - balance type with 2 trays- but can only load it twice. How do you find the fake gold coin?
Tugas You have 12 identical-looking coins, one of which is counterfeit. The counterfeit coin is either heavier or lighter than the rest. The only scale you have to use is a simple balance. Using the scale only three times (Note: not loading, but using for balancing), find the counterfeit coin.
Paradigma Algoritma
Divide and Conquer SMALLER PROBLEM SOLVED SMALLER PROBLEM SMALLER PROBLEM SMALLER PROBLEM SOLVED SMALLER PROBLEM SMALLER PROBLEM SOLVED CONQUER Permasalahan-permasalahan kecil dipecahkan secara parsial SMALLER PROBLEM SMALLER PROBLEM SOLVED SMALLER PROBLEM SMALLER PROBLEM SOLVED SMALLER PROBLEM SMALLER PROBLEM SOLVED SMALLER PROBLEM SOLVED SMALLER PROBLEM SMALLER PROBLEM SOLVED SMALLER PROBLEM SMALLER PROBLEM SMALLER PROBLEM SOLVED
Divide and Conquer SMALLER PROBLEM SOLVED SMALLER PROBLEM SOLVED SMALLER PROBLEM SOLVED BIG PROBLEM SOLVED COMBINE Permasalahan terpecahkan SMALLER PROBLEM SOLVED SMALLER PROBLEM SOLVED SMALLER PROBLEM SOLVED SMALLER PROBLEM SOLVED SMALLER PROBLEM SOLVED SMALLER PROBLEM SOLVED
INTEGER Z Bilangan yang tidak memiliki pecahan desimal BILANGAN BULAT
Integer Data Type • Signed • Bertanda (+ / -) • Unsigned • Bulat positif
Pembagian integer a | b jika b = ac; c Z; a 0 a dan b adalah dua bil. bulat dengan syarat a tidak sama dgn. 0 ahabis membagib (a dividesb) Jika terdapat bilangan bulat c Sedemikian hingga b = ac
Pembagian integer Contoh: 4 | 12 ? Ya 5 | 17 ? Tidak
Teorema Euclidian m = nq + r m dan n adalah bilangan bulat dengan n> 0, jika m (dividend) dibagi n (divisor) menghasilkan bilangan bulat q (quotient) dan menyisakan bilangan bulat r (remainder), untuk 0 r < n
Teorema Euclidian m = nq + r q = m div n r = m mod n
Teorema Euclidian Contoh: 34 = 5.6 + 4 6 = 34div5 4 = 34mod5
Tugas Tunjukkan apakah 19 habis membagi 89 773 8721
Tugas Carilah q dan r sehingga m = nq + r m = 66, n = 11 m = 221, n = 12 m = 3, n = 7