Algoritma dan Struktur Data Hermawan,Skom Email : Hermawan@stmik-mdp.net Hermawan_mdp@yahoo.co.id 1
Pengantar masalah Komputer solusi
Program, Bahasa Pemrograman dan pemrograman Program adalah kata, ekspresi, pernyataan yang disusun dan dirangkai menjadi satu kesatuan prosedur yang berupa urutan langkah untuk menyelesaikan masalah yang diimplementasikan dengan menggunakan bahasa pemrograman sehingga dapat dieksekusi oleh komputer. Bahasa Pemrograman adalah prosedur atau tata cara penulisan program. Pemrograman adalah proses mengimplementasikan urutan langkah untuk menyelesaikan suatu masalah dengan menggunakan suatu bahasa pemrograman.
Algoritma masalah Program komputer algoritma solusi
Algoritma Algorism algorithm nama penulis buku Arab yaitu Abu Ja’far Muhammad ibnu Musa Al-Khuwarizmi Algoritma adalah: penyusunan aspek proses logika dari suatu pemecahan masalah tanpa melihat karakteristik bahasa pemrograman yang akan digunakan urutan notasi logika yang merupakan hasil analisis dan rancangan sistematik dari strategi pemecahan masalah, untuk menggambarkan urutan langkah kerja yang jika dikerjakan akan membawa ke tujuannya. urutan logika langkah kerja untuk menyelesaikan suatu masalah.
Struktur Data dan Algoritma Struktur Data adalah cara penyimpanan dan pengorganisasian data-data pada memori komputer maupun file secara efektif sehingga dapat digunakan secara efisien, termasuk operasi-operasi di dalamnya. Hubungannya dengan Algoritma Dengan pemilihan struktur data yang baik, maka problem yang kompleks dapat diselesaikan sehingga algoritma dapat digunakan secara efisien, operasi-operasi penting dapat dieksekusi dengan sumber daya yang lebih kecil, memori lebih kecil, dan waktu eksekusi yang lebih cepat. Tidak semua struktur data baik dan sesuai. Contoh untuk problem data bank: pengupdate-an harus cepat, sedangkan penambahan/penghapusan data boleh lebih lambat. program = struktur data + algoritma
Contoh Algoritma yang Baik Resep Masakan Algoritma mengirim surat Tulis surat pada secarik kertas Ambil sampul surat atau amplop Masukkan surat ke dalam amplop Tutup amplop surat dengan lem pelekat Tulis alamat surat yang dituju, jika tidak ingat terlebih dahulu ambil buku alamat dan cari alamat yang dituju, tulis alamat pada amplop surat Tempelkan perangko pada amplop surat Bawa surat ke kantor pos untuk diserahkan pada pegawai pos atau menuju bis surat dan masukkan surat kedalam kotak/bis surat
Algoritma Tukar Isi Bejana Diberikan dua buah bejana A dan B, bejana A berisi larutan berwarna merah, bejana B berisi larutan berwarna biru. Pertukarkan isi kedua bejana itu ! sedemikian sehingga bejana A berisi larutan B Dan Bejana B berisi larutan A tanpa mencampur kedua isi bejana tersebut
Algoritma Tukar Isi Bejana DESKRIPSI : 1. Tuangkan larutan dari bejana A ke dalam bejana C. 2. Tuangkan larutan dari bejana B ke dalam bejana A. 3. Tuangkan larutan dari bejana C ke dalam bejana B.
Notasi Algoritma Notasi Algoritma ada 3, yaitu : Uraian deskriptif menggunakan bahasa yang biasa digunakan sehari-hari. 2. Pseudocode menggunakan kode-kode yang telah disepakati dan mempunyai arti tertentu 3. Bagan alir (Flowchart) algoritma tersebut dituliskan dalam notasi grafik yang mempunyai arti tertentu
Uraian Deskriptif Contoh : (Menghitung Luas Persegi Panjang) Masukkan panjang persegi panjang Masukkan lebar persegi panjang Hitung luas sama dengan panjang kali lebar Cetak luasnya
Pseudocode Algoritma Luas_Persegi_Panjang {Menghitung Luas Persegi Panjang} Deklarasi panjang, lebar, luas : integer Deskripsi read(panjang) read(lebar) luaspanjang*lebar Write(luas)
PseudoCode Algoritma NAMA_ALGORITMA {uraian singkat mengenai yang akan dilakukan algoritma ini} DEKLARASI {semua nama yang dipakai, meliputi nama tipe, nama tetapan, nama peubah, nama prosedur, dan nama fungsi didefinisikan di sini} DESKRIPSI {semua langkah / aksi algoritma dituliskan di sini} Variabel vs Konstanta ? Contoh Deklarasi Variabel Contoh Deklarasi Konstanta DEKLARASI Nilai_Angka, Rata_rata : real K : integer R : char DEKLARASI Const pi = 3.14 Const max = 250 Const min = 1
Pengisian nilai secara langsung Variabel tetapan {nilai tetapan diisikan ke dalam variable} Variabel1 variable2 {nilai variable2 disalin ke dalam variable1} Variabel ekspresi {hasil perhitungan diisikan ke dalam variable {peubah} h 5 { 5 diisikan ke dalam h } m 12 { 12 diisikan ke dalam m } h h + m { hasil perhitungan h } Sebelah kiri anak panah selaku penerima nilai, Sebelah kanan anak panah selaku pemberi nilai. Nilai yang dikandung penerima adalah nilai terakhir yang diterima.
Latihan Logika Diberikan dua buah bejana kosong A dan B, bejana A berkapasitas 5 liter sedangkan bejana B berkapasitas 3 liter. Tulislah algoritma untuk mengambil 4 liter air dengan hanya menggunakan kedua bejana tersebut! 15
Special thanks for this slide Thank You! Special thanks for this slide Gasim,Josie,Yoannita, and 2 my friends n familly 16