Tenia Wahyuningrum, SKom., MT Dasar-dasar Algoritma
Asal Usul Kata Al Khuwarizmi AlgorismAlgorithmAlgoritma
Abu Ja’far Mohammed ibn- Musa Al-Khwarizmi Buku : Al Jabar Wal Muqabala (Pemugaran dan pengurangan) Baghdad, sekitar tahun 780 s.d 850.
Definisi Algoritma Urutan langkah-langkah logis penyelesaian masalah yang disusun secara sistematis dan logis. Sesuai dengan logika Benar menurut penalaran Masuk akal LOGIS
Pertimbangan algoritma Harus benar Hasil yang dicapai Efisiensi Output sesuai yang dikehendaki Harus mampu memberikan hasil yang sedekat mungkin dengan nilai sebenarnya Efisiensi waktu dan memori
“ Setiap orang dapat membuat algoritma yang berbeda untuk menyelesaikan masalah”
Jawablah Sebutkan contoh algoritma dalam kehidupan sehari-hari!
Contoh NoProsesAlgoritmaContoh Langkah dalam Algoritma 1Membuat KueResep KueMasukan telur dalam wadah, kocok hingga mengembang 2Membuat pakaian Pola pakaian Gunting kain dari pinggir kiri bawah ke arah kanan sejauh 5 cm 3Merakit mobil tamiya Panduan merakit Sambungkan komponen A dengan komponen B 4Kegiatan sehari-hari Jadwal harian Pukul : mandi pagi Pukul : berangkat kuliah 5Mengisi voucher HP Panduan pengisian Tekan 888 Masukkan nomor voucher
Pemroses Membuat kue koki / chef Membuat pakaian penjahit Memainkan lagu pianis Pemroses harus Mengerti setiap langkah dalam algoritma Mengerjakan operasi yang bersesuaian dengan langkah tsb
AlGoRitMa, pRogRAm & BaHaSA Algoritma Metode & Tahapan sistematis Program Kumpulan Pernyataan komputer Bahasa Pemrograman Bahasa untuk berinteraksi manusia dengan komputer
bahasa mesin LLL assembly MLL Bahasa c, pascal, basic, dll HLL
Formula ALgoritmaBahasa Program
Bagaimana cara mereka berkomunikasi?
Interpreter menerjemahkan program baris per baris artinya jika suatu baris akan dieksekusi, maka baris tersebut diterjemahkan dulu ke bahasa mesin. Contoh : bahasa basic
Interpreter Compiler Interpreter & Compiler Interpreter & Compiler Menerjemahkan baris per baris Menerjemahkan semua perintah kemudian menjalankannya Gabungan keduanya
Java
Beberapa cara untuk menuliskan algoritma 1 Menggunakan kata-kata 2 Menggambar diagram/ flowchart 3 Menuliskan dalam bentuk pseudocode
Dengan menggunakan kata-kata
Contoh masalah BA
Algoritma TukarIsiBejana Diberikan dua buah bejana, A dan B; bejana A berisi larutan berwarna merah, bejan B berisi larutan berwarna biru. Pertukarkan isi kedua bejana itu sedemikian sehingga bejan A berisi larutan berwarna biru dan bejan B berisi larutan berwarna merah. Deskripsi: 1. Tuangkan larutan dari bejan A ke dalam bejana C. 2. Tuangkan larutan dari bejan B ke dalam bejana A. 3. Tuangkan larutan dari bejan C ke dalam bejana B.
Dengan menggunakan flowchart
Contoh masalah Jika lampu di rumah mati, apa yang harus dilakukan?
Dengan flowchart
Dengan pseudocode
“Satu cara untuk mewujudkan (atau kadang-kadang melakukan kodifikasi) suatu algoritma adalah dengan penulisan pseudocode”
Pseudocode 123 TEXT Tidak menggunakan sintaksis bahasa pemrograman tertentu Tidak ada aturan baku dalam penulisannya Beberapa penulis sedikit meminjam sintaks bahasa tertentu
Dengan pseudocode Algorithm LargestNumber Input: A non-empty list of numbers L. Output: The largest number in the list L. largest ← -∞ for each item in the list L, do if the item > largest, then largest ← the item return largest
Contoh lain pseudocode Regular code (written in PHP):PHP <?php if ($foo == "bar") { $yesFoo = true; } else { $yesFoo = false; } ?> Pseudocode: If the value of foo is equal to bar then make "yesFoo" true otherwise, make "yesFoo" false Pseudocode: If the value of foo is equal to bar then make "yesFoo" true otherwise, make "yesFoo" false
Latihan = ?
Mulai Masukkan angka pertama Pilih “+” Masukkan angka kedua Hasil angka pertama + angka kedua Pilih “=“ Tampilkan hasil Selesai
mulai Masukkan angka 1 Pilih “+” Masukkan angka 2 Hasil=angka1+angka 2 Tampilkan hasil a a selesai
Latihan di kelas Tulislah algoritma untuk mencari luas segitiga jika masukan dari pengguna adalah alas dan tinggi! (dengan menggunakan kalimat dan flowchart)
Tugas Kecil 1 Buatlah algoritma untuk mengubah suhu dari Celcius ke Kelvin, dan dari Celcius ke Reamur Tuliskan contoh algoritma dalam kehidupan sehari- hari, beserta langkah-langkahnya Deadline 1 Minggu