Algoritma dan Pemrograman 2 Algoritma dan Pemrograman Komang Kurniawan W.,M.Cs.
Algoritma Pemrograman Apa definisi dari “Algoritma”? Algoritma adalah urutan langkah-langkah penyelesaian masalah yang disusun secara sistematis dan logis Dalam kenyataannya, setiap orang bisa membuat algoritma yang berbeda untuk menyelesaikan suatu permasalahan Maka carilah algoritma yang paling efisien dan cepat
Algoritma vs Program Program adalah kumpulan pernyataan komputer Metode dan tahapan sistematis dalam program adalah Algoritma Program = Algoritma + Bahasa
Keuntungan Algoritma Pembuatan atau penulisan algoritma tidak tergantung pada bahasa pemrograman manapun Notasi algoritma dapat diterjemahkan ke dalam berbagai bahasa pemrograman. Apapun bahasa pemrogramannya, output yang akan dikeluarkan sama karena algoritmanya sama.
Ciri daripada Algoritma Algoritma harus berhenti setelah mengerjakan sejumlah langkah terbatas. Algoritma memiliki nol atau lebih masukkan. Algoritma memiliki satu atau lebih keluaran. Algoritma harus efektif (setiap langkah harus sederhana sehingga dapat dikerjakan dalam waktu yang relatif cepat).
Penyajian Algoritma Menggunakan bahasa natural (Bahasa manusia: Indonesia, Inggris) Kelemahannya masih sering membingungkan (ambigu) / sulit dipahami. Menggunakan Flowchart Baik karena alur algoritma dapat dilihat secara visual, tetapi repot pembuatannya jika algoritma panjang Menggunakan Pseudocode Sudah dekat dengan bahasa pemrograman, tetapi sulit dimengerti oleh orang yang belum tahu pemrograman
Contoh Algoritma sederhana Misalkan terdapat dua buah gelas, gelas A dan gelas B. Gelas A berisi air berwarna merah dan gelas B berisi air berwarna biru Kita ingin menukartan isi air kedua gelas tersebut, sehingga gelas A berisi air berwarna biru dan gelas B berisi air berwarna merah.
Bagaimana algoritmanya?
Keadaan awal
1. Tuangkan air dari gelas A ke gelas C
2. Tuangkan air dari gelas B ke gelas A
3. Tuangkan air dari gelas C ke gelas B
Keadaan akhir
Representasi Algoritma Flowchart Pseudocode
Flowchart
Jenis-jenis Flowchart System Flowchart Urutan proses dalam sistem dengan menunjukkan alat media input, output, dan jenis media penyimpanan dalam proses pengolahan data Program Flowchart Urutan instruksi penyelesaian persoalan yang digambarkan dengan simbol tertentu
Flowchart system Input Output Manual Input Proses Magnetic disk File Arah proses Urutan proses dalam sistem dengan menunjukkan alat media input, output, dan jenis media penyimpanan dalam proses pengolahan data
Contoh Flowchart system Keyboard CPU File Magnetic disk
Flowchart Program
Masih ingat cara bikin “telur dadar”?
Algoritma membuat telur dadar Nyalakan api kompor Tuangkan minyak ke dalam wajan Pecahkan telur ayam ke dalam mangkok Tambahkan garam secukupnya Aduk campuran telur dan garam Tuang adonan telur ke dalam wajan Masak telur hingga matang
Algoritma membuat telur dadar Bagaimana Flowchart-nya?
Flowchart membuat telur dadar.
Kaidah umum pembuatan Flowchart Tidak ada rumus atau patokan yang bersifat mutlak Dapat bervariasi antara satu pemrogram dengan yang lainnya Setiap pengolahan selalu terdiri dari 3 bagian utama : Input Proses pengolahan Output
Anjuran dalam pembuatan Flowchart Hindari pengulangan proses yang tidak perlu dan logika yang berbelit Digambarkan dari atas ke bawah dan diberikan tanda panah untuk memperjelas Diawali dari satu titik START dan diakhiri dengan END
Bagan Arus Logika Flowchart
Instruksi Tanpa Syarat
Instruksi Bersyarat
Instruksi Pengulangan
Contoh Buat algoritma untuk mencari rata-rata dari 3 bilangan yang diinputkan
Algoritma dengan Bahasa Indonesia Baca bilangan a, b, dan c Jumlahkan ketiga bilangan tersebut Bagi jumlah tersebut dengan 3 Tulis hasilnya
Algoritma dengan Flowchart
Latihan Buatlah algoritma untuk menghitung luas lingkaran dan keliling segitiga siku-siku. Buatlah flowchart dari algoritma pada soal diatas.
Algoritma menghitung keliling segitiga siku-siku Mulai Inputkan alas, tinggi Hitung sisi miring (R) Hitung keliling Keliling=alas+tinggi+R Tulis keliling selesai
Algoritma menghitung luas lingkaran berjari-jari R Mulai Definisikan phi = 3.14 Inputkan R Hitung luas luas=phi x R x R Tulis luas Selesai