ALGORITMA PEMROGRAMAN
PENGERTIAN ALGORITMA
Algoritma adalah Urutan langkah-langkah logis
penyelesaian masalah yang
disusun secara sistematis.
Masalah dapat berupa apa saja, dengan catatan untuk setiap masalah, ada kriteria kondisi awal yang harus dipenuhi sebelum menjalankan algoritma.
Secara informal konsep
algoritma sering kali disetarakan dengan
sebuah resep. Sebuah resep biasanya memiliki daftar bahan atau bumbu yang akan digunakan, urutan
pengerjaan dan bagaimana
hasil dari urutan
pengerjaan tersebut. Apabila
bahan
yang digunakan
tidak tertera (tidak tersedia) maka resep
tersebut
tidak
akan dapat dikerjakan. Demikian
juga jika
urutan pengerjaannya tidak beraturan, maka hasil yang diharapkan tidak akan dapat diperoleh.
Algoritma yang berbeda dapat diterapkan pada suatu masalah dengan
kriteria yang sama. Tingkat kerumitan dari suatu algoritma merupakan ukuran
seberapa banyak komputasi yang dibutuhkan algoritma tersebut untuk
menyelesaikan masalah. Umumnya, algoritma
yang
dapat
menyelesaikan
suatu permasalahan
dalam waktu yang singkat
memiliki
tingkat
kerumitan
yang
rendah, sementara
algoritma
yang membutuhkan waktu
lama untuk menyelesaikan suatu masalah membutuhkan tingkat kerumitan yang tinggi.
Menurut Knuth (1973) algoritma harus memiliki
sebagai berikut :
·
Algoritma harus berhenti
setelah mengerjakan sejumlah
langkah terbatas.
·
Setiap langkah harus didefinisikan dengan tepat dan tidak ambigu.
·
Algoritma memiliki nol atau lebih masukan (input)
·
Algoritma memiliki nol atau lebih keluaran (output)
·
Algoritma harus efektif dan efisien.
CARA PENULISAN ALGORITMA
Ada tiga cara penulisan algoritma, yaitu :
1.
Structured English
(SE)
SE merupakan
alat yang cukup
efisien untuk menggambarkan
suatu algoritma. Basis
dari
SE adalah Bahasa Inggris,
namun
kita
dapat
memodifikasi dengan
Bahasa
Indonesia sehingga
kita
boleh menyebutnya sebagai Structured Indonesia (SI). Algoritma seperti pada
contoh 9.1 dan 9.2 merupakan
algoritma
yang
ditulis menggunakan
SI.
Karena basisnya adalah bahasa sehari-hari, maka SE atau SI lebih tepat
untuk menggambarkan
suatu algoritma yang akan dikomunikasikan
kepada pemakai sistem.
2.
Pseudocode
Pseudocode mirip dengan SE. Karena kemiripan ini kadang-kadang SE dan Pseudocode dianggap sama. Pseudo berarti imitasi atau tiruan atau
menyerupai,
sedangkan
code menunjuk pada
kode program. Sehingga
pseudocode adalah kode
yang mirip dengan
instruksi kode program sebenarnya.
Pseudocode berbasis pada
bahasa
pemrograman
yang
sesungguhnya
seperti
BASIC, FORTRAN atau
PASCAL.
Pseudocode
yang
berbasis
bahasa
PASCAL
merupakan pseudocode yang sering digunakan. Kadang-kadang orang menyebut pseudocode
sebagai
PASCAL-LIKE
algoritma. Pseudocode
berbasis bahasa BASIC
akan tampak sebagai berikut :
1. Start
2. READ alas,
tinggi
3. Luas = 0.5
* alas * tinggi
4. PRINT Luas
5. Stop
Pada contoh diatas
tampak bahwa
algoritma
sudah sangat mirip dengan
bahasa BASIC. Pernyataan seperti READ dan PRINT merupakan keyword yang
ada pada
bahasa
BASIC yang
masing-masing menggantikan kata “baca data” dan
“tampilkan”. Dengan menggunakan
pseudocode seperti di atas maka proses penterjemahan dari algoritma ke
kode program menjadi lebih mudah.
3.
Flowchart
Flowchart atau bagan alir adalah skema/bagan (chart) yang menunjukkan alir (flow) di dalam suatu
program secara logika. Flowchart
merupakan alat
yang banyak digunakan untuk
menggambarkan
algoritma
dalam
bentu
notasi-notasi tertentu.
Komentar