Title: Menuliskan Algoritma
1Menuliskan Algoritma
- Algoritma dapat dituliskan dengan berbagai cara
- Teks
- Level kedekatan dengan kode program mulai dari
teks bebas sampai pseudocode - Diagram, misal bagan alir (flowchart)
2Contoh Persoalan 1
- Buatlah algoritma untuk menentukan apakah suatu
bilangan bulat positif adalah bilangan genap atau
bilangan gasal.
3Contoh 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.
4Contoh Algoritma 2Menggunakan Pseudocode
Program Menentukan_Bilangan Menentukan apakah suatu bilangan bulat positif adalah bilangan gasal atau genap
KAMUS n integer gt 0 input bilangan bulat positif m integer gt 0 hasil sisa pembagian n dgn. 2
ALGORITMA input (n) m ? n mod 2 if m 0 then output (n, adalah bilangan genap) else m 1 output (n, adalah bilangan gasal)
5Contoh Algoritma 3Menggunakan Flowchart
Ke slide 26
6Bagan 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.
7Simbol Flowchart
SIMBOL NAMA FUNGSI
Terminator Permulaan/akhir algoritma
Garis alir / flow line Arah aliran program
Preparation Proses inisialisasi/pemberian harga awal
Proses Proses perhitungan/proses pengolahan data
8Simbol Flowchart
SIMBOL NAMA FUNGSI
Input/output data Proses input/output data, parameter, informasi
Predefined process/ subprogram Permulaan sub program/proses menjalankan sub program
Decision Perbandingan pernyataan, penyeleksian data yang memberikan pilihan untuk langkah selanjutnya
9Simbol Flowchart
SIMBOL NAMA FUNGSI
On Page Connector Penghubung bagian-bagian flowchart yang berada pada satu halaman
Off Page Connector Penghubung bagian-bagian flowchart yang berada pada halaman yang berbeda
Dll.
10Dari Spesifikasi Masalah ke Flowchart Contoh
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 suhu?0 derajat, maka wujud air beku
- Jika suhugt0 derajat dan ?100 derajat, maka wujud
air cair - Jika suhult100 derajat, maka wujud air uap
11Contoh Persoalan 2
Kamus T integer suhu air
12Dari Spesifikasi Masalah ke FlowchartContoh
Persoalan 3
- Buatlah sebuah algoritma yang membaca sebuah
nilai N yang merupakan integer positif gt 0 dan
menuliskan output 1,2,3,N berderet ke bawah,
contoh N 4 - 1
- 2
- 3
- 4
13Contoh Persoalan 3
Kamus N integer gt 0 input bilangan I
integer gt 0 counter
14Latihan
- 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.