Algoritma Indriati ,ST .,M.Kom
DEFINISI ALGORITMA Algoritma adalah urutan logis langkah-langkah penyelesaian masalah is a step-by-step procedure for calculations. More precisely, it is an effective method expressed as a finite list of well-defined instructions for calculating a function
NOTASI ALGORITMIK Menggunakan uraian kalimat deskriptif Flow chart Pseudo code
SIMBOL-SIMBOL FLOWCHART Terminator (start/stop) Input/Output Data Manual Input Display
SIMBOL-SIMBOL FLOWCHART Flow Line Decision Process Predefined Process
SIMBOL-SIMBOL FLOWCHART On-page Connector Off-page connector Commentary
ATURAN PENULISAN PSEUDO CODE Indentasi menandakan blok yang sama Perulangan (loop) diberi indentasi Operator penugasan (assignment) menggunakan Variabel bersifat lokal Penggunaan array: A[i], atau A[i..j] Passing parameter dilakukan by value
Contoh Menghitung kuadrat suatu bilangan Menghitung luas bidang datar persegi panjang Menghitung volume balok Konversi mata uang rupiah ke dolar Konversi suhu celsius ke fahrenheit
Flowchart menghitung kuadrat suatu bilangan Start Kuadrat = 0 Input Bil Kuadrat = Bil * Bil Cetak Kuadrat Stop
Flowchart menghitung luas bidang persegi panjang Start Luas = 0 Input p,l Luas = p*l Cetak Luas Stop
Flowchart menghitung volume benda balok Start Volume=0 Input p,l,t Volume = p*l*t Cetak Volume Stop
Flowchart konversi mata uang- Rupiah ke Dollar Start Kurs_Rp2US = 9500 Konversi = 0 Input Rupiah Konversi = Rupiah / Kurs_Rp2US Cetak Konversi Stop
Flowchart konversi suhu – Celcius ke Fahrenheit Start Fahrenheit =0 Input Celcius Fahrenheit = (9 / 5 * Celcius) + 32 Cetak Fahrenheit Stop
Tugas Penentuan bilangan positif atau negatif Penentuan bilangan ganjil atau genap Buat algoritma pertukaran Nilai dua buah variable Buat algoritma untuk menghitung suku ke n dari deret aritmatika dengan beda b dan suku pertama a Buat algoritma untuk menghitung suku ke n dari deret fibonaci
SYARAT SEBUAH ALGORITMA Menurut Donald E. Knuth dalam bukunya yang berjudul The Art of Computer Programming, algoritma harus mempunyai lima ciri penting: Harus berhanti setelah melakukan beberapa langkah terbatas Setiap langkah harus didefinisikan dengan tepat dan tidak ambigu Memiliki nol atau lebih masukan Memiliki nol atau lebih keluaran Harus efektif (sederhana sehingga dapat dikerjakan dalam waktu yang masuk akal)
KOMPLEKSITAS ALGORITMA Ukuran yang digunakan untuk menyatakan keefektifan sebuah algoritma Ukuran yang digunakan untuk mengukur seberapa besar pertumbuhan kumputasi sebuah algoritma
Notasi kompleksitas Big O Big (omega) Big Ө (theta)