Konsep Algoritma #3
Sifat Algoritma
Berdasarkan ciri
algoritma yang dipaparkan Donald Knuth dan definisi algoritma, dapat
disimpulkan bahwa sifat utama suatu algoritma adalah sebagai berikut:
1. Input : Suatu
algoritma memiliki input atau kondisi awal sebelum dilaksanakan, bisa
berupa nilai perubah yang diambil dari himpunan khusus.
2. Ouput : Suatu
algoritma akan menghasilkan output setelah dilaksanakan, atau
algoritma akan mengubah kondisi awal menjadi kondisi akhir, dimana
nilai output diperoleh dari nilai input yang telah diproses melalui
algoritma.
3. Definiteness :
Langkah-langkah yang dituliskan dalam algoritma terdefinisi dengan
jelas sehingga mudah dilaksanakan oleh pengguna algoritma.
4. Finiteness :
Suatu algoritma harus memberi kondisi akhir atau output setelah
sejumlah langkah yang terbatas jumlahnya dilakukan terhadap setiap
kondisi awal atau input yang diberikan.
5. Effectiveness :
Setiap langkah dalam algoritma bisa dilaksanakan dalam suatu selang
waktu tertentu sehingga pada akhirnya didapatkan solusi sesuai yang
diharapkan.
6. Generality :
Langkah – langkah algoritma berlaku untuk setiap himpunan input
yang sesuai dengan persoalan yang diberikan, tidak hanya untuk
himpunan tertentu.
Agar bentuk
algoritma dan proses penyusunannya dapat mulai dipahami maka berikut
ini akan diuraikan proses pembuatan algoritma mulai dari bentuk yang
menggunakan bahasa sehari hari, disusul penjelasan format yang dapat
dijadikan acuan, dan beberapa contoh pembuatan algoritma yang
mengikuti suatu format tertentu.
#Contoh :
Susun algoritma
untuk mencari angka terbesar (maksimum) dari suatu kumpulan bilangan
bulat yang terbatas banyaknya
Solusi => Dalam
bahasa sehari hari, penyelesaian untuk masalah diatas disusun sebagai
berikut:
1. Ambil satu angka
pertama dan anggaplah angka pertama dalam kumpulan ini sebagai yang
terbesar (maksimum).
2. Bandingkan angka
maksimum ini dengan angka berikutnya dalam kumpulan. Bila angka
tersebut lebih besar maka jadikanlah ia maksimum.
3. Ulangi langkah 2
ini sehingga tidak ada lagi angka yang tersisa dalam himpunan.
4. Hentikan
pembandingan setelah semua angka selesai dibandingkan maka angka
terbesar dalam himpunan tersebut adalah angka maksimum terakhir.
Solusi tersebut
dalam bentuk simbol intruksi adalah sebagai berikut:
1. Andaikan N =
banyaknya angka dalam himpunan
2. Indeks = I
3. Maksimum = angka
(indeks)
4. Selama indeks >
N, lakukan:
a. Bila angka
(indeks) > maksimum, maka Maksimum = angka (indeks)
b. Indeks = indeks
+ 1
c. Ulangi lagi
untuk indeks berikutnya.
5. Angka terbesar
dalam himpunan adalah maksimum terakhir.
Suatu algoritma
tentu dapat ditulis menggunakan bahasa sehari hari seperti contoh di
atas. Namun demikian algoritma yang seperti itu masih sulit untuk
diterjemahkan apabila akan diimplementasikan ke dalam suatu bahasa
pemrograman komputer. Setiap algoritma tentu memerlukan langkah
“peralihan” ke suatu bahasa program ketika akan dilaksanakan
menggunakan pemrograman komputer. Semakin dekat bentuk algoritma itu
dengan bentuk program komputer maka semakin mudah penerjemahnya.
Suatu algoritma juga dapat ditulis langsung dalam bentuk “bahasa
program” namun algoritma seperti itu hanya bisa digunakan untuk
bahasa program tertentu dan harus diubah dan disesuaikan apabila akan
diimplementasikan dengan bahasa pemrograman lain.

0 comments: