LOGIKA & ALGORITMA -Pengertian & Contoh Algoritma Pertemuan ke 1 Oleh: Siti Mukaromah, S.Kom
Algoritma Abu Ja’far Muhammad Ibnu Musa Al-Khuwarizmi. Al-Khuwarizmi dibaca orang barat menjadi Algorism. Algorithm Algoritma Pemecahan Masalah
Algoritma - Contoh langkah-langkah yang dilakukan waktu menelepon teman diagram alur mengenai apa-apa yang dilakukan mualai bangun pagi sampai tiba di kampus diagram alur untuk proses merebus telur
Algoritma Contoh 1 ambil panci apakah panci bersih, bila kotor cuci lebih dulu taruh air dalam panci nyalakan kompor letakkan panci diatas kompor tunggu hingga air mendidih masukkan telur tunggu sampai tiga menit angkat panci dari kompor matikan kompor angkat telur dari panci
Algoritma Contoh2 Angkat Gagang Telpon Tekan Nomor yang Akan dihubungi Bicara Letakkan Gagang Telpon
Algoritma Contoh2 – Rev1 Angkat Gagang Telpon Ada Nada Panggil? Jika Ada, Masukkan Coin Jika Tidak, ke Langkah 5 Tekan Nomor Yang Akan dihubungi Ada Yang Mengangkat? Jika Ada, Bicara Jika Tidak, Ke Langkah 5 Letakkan Gagang Telpon ALGORITMA
Pengertian Algoritma Urut-urutan langkah yang dinyatakan dengan jelas dan tidak rancu untuk memecahkan suatu masalah dalam rentang waktu tertentu
Karakteristik Algoritma Unambigious Tiap statement/perintah harus mempunyai satu tafsiran tunggal Precise Urutan eksekusi langkah-langkah harus jelas. Kapan sebuah perintah dijalankan, kapan sebuah perintah berhenti. Definite Hasil dari Algoritma harus bersifat “pasti”. Artinya hasil dari suatu Algoritma harus sesuai dengan kondisi yang diinginkan. Finite Berhingga, *dalam jangka waktu tertentu
Sifat Top Down Desain Dekomposisi masalah utama menjadi sub-masalah yang tepat Cek, apakah sub masalah telah memberikan hasil yang tepat. Gabungan Antara sub-masalah harus dapat memberikan hasil yang benar (masalah utama terpecahkan) Ulangi proses 1 – 3, hingga terbentuk suatu sub masalah yang sangat spesifik (kecil)
Algoritma Pemrograman Belajar memprogram tidak sama dengan belajar bahasa pemrograman. Metodologi pemecahan masalah Berbentuk dalam notasi tertentu yang mudah difahami Sedangakan belajar bahasa pemrograman berarti belajar memakai suatu bahasa yang spesifik, struktur data, tata cara penulisan, fungsi, compiler dll. Spesifik hanya untuk suatu bahasa tertentu
Algoritma Pemrograman Penulisan Uraian Desktriptif Menggunakan bahasa sehari-hari Terkadang ambigu Pseudocode Menggunakan kode/simbo tertentu yang spesifik. Bagan Alir Proses ditulis dalam bentuk flow chart/notasi, secara top down
Algoritma Deskriptif Algoritma Untuk Penjumlahan Masukkan bilangan pertama yang akan dijumlahkan Masukkan bilangan kedua yang akan dijumlahkan Jumlahkan bilangan pertama dengan bilangan ke dua Simpan Hasilnya pada variabel c Tampilkan variabel c
Algoritma Pseudocode Input (bilangan_pertama) Input (bilangan_kedua) C= bilangan_pertama + bilangan_kedua Tampilkan c
Pseudocode Bahasa Pascal Var bilangan_pertama : integer; bilangan_kedua : integer; c : integer; Begin write (‘masukkan bilangan pertama’); read(bilangan_pertama); write (‘masukkan bilangan kedua’); read(bilangan_kedua) c := bilangan_pertama+bilangan_kedua write(‘hasilnya:’, c); end
Langkah-Langkah Pemrograman Definisikan masalah Temukan gambaran penyelesaian masalah Cek ulang Terjemahkan ke dalam algoritma Terjemahkan algoritma ke dalam bahasa pemrograman Uji Hasil
Program Yang Baik Correct Clear Efesien Program dapat memberikan solusi yang tepat dari suatu masalah Clear Program harus jelas, dapat dimengerti dengan mudah, dan dapat di trace dengan mudah Efesien Terkait dengan sumber daya yang dibutuhkan. Kecepatan juga menjadi hal yang perlu diperhatikan
Belajar Memprogram vs Belajar Bahasa Pemrograman Belajar Memprogram = Belajar Algoritma Problem Solving Belajar Bahasa Pemrograman = Belajar aturan-aturan bahasa pemrograman Belajar Memprogram adalah dasar dari belajar bahasa pemrograman Belajar Memprogram/AlgoritmaSystem Analyst, program designer Belajar Bahasa Pemrogramanprogrammer Belajar memprogram lebih penting?
Bahasa Pemrograman
Kesimpulan Pemecahan masalah=menemukan urutan langkah-langkah (dekomposisi) Algoritma langkah-langkah pemecahan masalah Algoritma unambigious, precise, definite finite Algoritma dapat ditulis dengan, uraian deskriptif, pseudocode, flow chart