160 likes | 821 Views
Menuliskan Algoritma. Algoritma dapat dituliskan dengan berbagai cara: Teks Level kedekatan dengan kode program: mulai dari teks bebas sampai pseudocode Diagram, misal: bagan alir ( flowchart ). Contoh Persoalan 1.
E N D
Menuliskan Algoritma • Algoritma dapat dituliskan dengan berbagai cara: • Teks • Level kedekatan dengan kode program: mulai dari teks bebas sampai pseudocode • Diagram, misal: bagan alir (flowchart)
Contoh Persoalan 1 • Buatlah algoritma untuk menentukan apakah suatu bilangan bulat positif adalah bilangan genap atau bilangan gasal.
Contoh Algoritma 1: Menggunakan Teks Bebas • Bagi bilangan dengan bilangan 2 • Hitung sisa hasil bagi pada langkah 1. • Bila sisa hasil bagi sama dengan 0 maka bilangan itu adalah bilangan genap tetapi bila sisa hasil bagi sama dengan 1 maka bilangan itu adalah bilangan gasal.
A Start Kamus: n : integer > 0 m : integer > 0 m = 0 input (n) Tidak Ya m = n mod 2 { Hitung sisa bagi n dengan 2 } output (‘Genap’) output (‘Gasal’) End A Contoh Algoritma 3:Menggunakan Flowchart Ke slide 26
Bagan Alir (Flowchart) • Bagan alir (flowchart): skema grafis untuk merepresentasikan algoritma • Kelebihan: • Bentuk grafis memudahkan interpretasi dan pembacaan • Relatif mudah dimengerti • Relatif mudah untuk dibuat • Kekurangan: • Tidak ringkas (membutuhkan media penulisan yang relatif besar) • Untuk algoritma dalam ukuran besar menjadi tidak praktis • Kurang fleksibel untuk menjelaskan konsep-konsep spesifik dalam pemrograman • Misalnya: struktur data (type data tidak terdefinisi eksplisit), kondisional dengan banyak kasus, dsb.
Simbol Flowchart Dll.
Dari Spesifikasi Masalah ke FlowchartContoh Persoalan 2 • Buatlah sebuah algoritma yang membaca sebuah harga berupa bilangan bulat yang mewakili pengukuran suhu air (dalam derajat Celcius) pada tekanan atmosfir dan menuliskan wujud air pada temperatur dan tekanan tersebut: • Jika suhu0 derajat, maka wujud air: beku • Jika suhu>0 derajat dan 100 derajat, maka wujud air: cair • Jika suhu<100 derajat, maka wujud air: uap
Start input(T) T0 T T>100 0<T100 output(‘Beku’) output(‘Cair’) output(‘Uap’) End Contoh Persoalan 2 Kamus T : integer {suhu air}
Dari Spesifikasi Masalah ke FlowchartContoh Persoalan 3 • Buatlah sebuah algoritma yang membaca sebuah nilai N yang merupakan integer positif > 0 dan menuliskan output 1,2,3…,N berderet ke bawah, contoh: N = 4 1 2 3 4
Start input(N) I = 1 output(I) I = I + 1 Tidak I > N Ya End Contoh Persoalan 3 Kamus: N : integer > 0 {input bilangan} I : integer > 0 {counter}
Latihan • Buatlah algoritma dalam bentuk flowchart untuk persoalan-persoalan berikut: • Menentukan apakah suatu huruf adalah huruf ‘A’ atau bukan. • Menentukan rangking (urutan) dari 3 buah bilangan bulat yang berbeda dan menuliskan urutannya secara menaik. • Menentukan apakah masukan tahun (bilangan bulat positif) adalah tahun kabisat atau bukan. • Buatlah algoritma untuk menghitung nilai faktorial dari masukan sebuah bilangan bulat positif atau 0. • Buat algoritma untuk menghitung jumlah N suku dari deret aritmatika berikut: Sn = 3 + 7 + 11 + …… + (4n-1) • Buat algoritma untuk mencetak pasangan nilai X dan Y di mana hubungan antara X dan Y memenuhi persamaan Y = X3– 2X +1 dan nilai x berubah dari –10 sampai 10.