PENULISAN ALGORITMA Algoritma dan Pemrograman
Rajif Agung Yunmar, S.Kom, M.Cs.
Penulisan Algoritma ●
●
Dalam bentuk tulisan ➢
Bahasa natural
➢
Pseudocode
Dalam bentuk gambar ●
Diagram alir (flowchart)
Penulisan Algoritma ●
Menggunakan diagram alir (flowchart) ➢
●
Ditulis dalam bahasa natural (bahasa yang dapat dimengerti manusia) ➢
●
Sangat baik secara visual, namun akan kesulitan jika algoritmanya terlalu panjang
Sering membingungkan (ambigous)
Menggunakan pseudo code ➢
Lebih dekat ke bahasa pemrograman, namun akan sulit dimengerti oleh orang awam
Flowchart ●
●
Tujuan : menggambarkan tahapan penyelesaian masalah secara sederhana, terurai, rapi dan jelas. Flowchart dibangun menggunakan simbolsimbol yang standar.
Jenis Flowchart ●
●
Flowchart sistem : urutan proses dalam sistem dengan menggambarkan media input, output dan media penyimpanan dalam proses pengolahan data. Flowchart program : menggambarkan urutan logika dan instruksi dari suatu prosedur pemecahan masalah.
Komponen Flowchart Setiap algoritma yang digambarkan dengan flowchart menimal terdiri dari tiga bagian utama, yaitu : ●
Input
●
Proses
●
Output
Simbol Flowchart Sistem Pita Magnetik
Proses
Keyboard
Keyboard
Media penyimpan
Arah proses
Input / output
Simbol Flowchart Program (terminal symbol)
menunjukkan awal dan akhir dari program
(preparation symbol) memberikan nilai awal pada suatu variabel atau counter (processing symbol)
menunjukkan pengolahan aritmatika dan pemindahan data
(input/output symbol) menunjukkan proses input atau output
(decision symbol)
untuk mewakili operasi perbandingan logika
Simbol Flowchart Program (predefined process symbol) proses yang ditulis sebagai sub program, yaitu prosedur atau fungsi (off page connector symbol)
penghubung pada halaman yang berbeda
(connector symbol)
penghubung pada halaman yang sama
(arrow symbol)
arah proses
Contoh Penggunaan ●
●
Simbol terminator digunakan untuk mengawali dan mengakhiri urutan langkah algoritma. Diawali dengan kata
Mulai
“ Mulai, begin atau start ” ●
Diakhiri dengan kata “ Selesai, end atau stop ” Selesai
Contoh Penggunaan ●
Simbol input/output digunakan memasukan suatu nilai untuk proses atau menampilkan nilai dari hasil suatu proses.
input(a)
output(a)
Contoh Penggunaan ●
Simbol proses digunakan untuk memproses suatu data atau untuk perhitungan aritmatika.
x←y+5 z←x*8
Contoh Penggunaan ●
Simbol decision digunakan untuk membandingkan suatu data dan memiliki 2 keluaran yaitu “True / False” atau “Benar / Salah” atau “Ya / Tidak”
x > 20 Tidak
Ya
Contoh Kasus Mulai
Masukkan A dan B
C=A*B
Tampilkan C
Selesai
Contoh Kasus Mulai
Masukkan A
Bagi A dg 2
Tidak
Apakah sisa hasil bagi = 0?
Ya
“Genap”
“Ganjil” Selesai
Pseudocode ●
Pseudo = imitasi, mirip atau menyerupai
●
Code
●
●
●
= kode program
Pseudocode adalah cara penulisan algoritma yang menyerupai kode program sebenarnya. Pseudocode berbasis kepada bahasa Pascal, Basic, Fortran atau Cobol. Lebih tepat jika dikomunikasikan dengan programmer.
Aturan Penulisan Pseudocode Pseudocode terdiri dari tiga buah bagian: ●
Judul algoritma Terdiri atas nama algoritma dan penjelasan tentang algoritma tersebut. Nama algoritma sebaiknya singkat dan menggambarkan apa yang dilakukan oleh algoritma tersebut.
●
Deklarasi Mendefinisikan semua nama yang digunakan di dalam program. Nama tersebut dapat berupa nama tetapan, peubah, tipe, prosedur dan fungsi.
●
Deskripsi Berisi uraian langkah-langkah penyelesaian masalah yang ditulis dengan menggunakan notasi yang akan dijelaskan selanjutnya.
Contoh Pseudocode Algoritma Luas_Lingkaran { ← ini judul algoritma } { menghitung luas untuk jari-jari tertentu. Algoritma menerima masukan jari-jari lingkaran, menghitung luas lingkaran, dan mencetak luas lingkaranke piranti keluaran ← ini penjelasan algoritma } DEKLARASI : const PI = 3.14 R : real Luas : real DESKRIPSI : read (R) Luas ← PI * R * R write(Luas)
Algoritma dengan Bahasa Natural ●
Penulisannya didasarkan kepada struktur bahasa sehari-hari tanpa melihat kepada aturan-aturan yang berlaku pada penulisan algoritma.
Contoh Kasus Algoritma menghitung persegi panjang “Diberikan masukan panjang dan lebar, tentukan luas dari sebuah persegi panjang” Notasi Algoritma 1. Mulai 2. Baca panjang dan lebar 3. Luas = panjang * lebar 4. Tulis luas persegi panjang 5. Selesai
Contoh Kasus Algoritma kelulusan_mhs “Diberikan masukan nama dan nilai mahasiswa, jika nilai tersebut lebih besar atau sama dengan 60 maka dinyatakan lulus. Jika lebih kecil dari 60 maka dinyatakan tidak lulus” Notasi Algoritma 1. Mulai 2. Baca nama dan nilai mahasiswa 3. Jika nilai >= 60 maka keterangan = lulus tetapi, jilai nilan < 60 maka keterangan = tidak lulus 4. Tulis nama dan keterangan 5. Selesai
Any Question?