Berdasarkan ciri algoritma yang dipaparkan di tulisan
terdahulu dan definisi algoritma, dapat disimpulkan bahwa sifat utama suatu
algoritma adalah sebagai berikut:
1. Memiliki Input (masukan).
2. Memiliki Output (keluaran).
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.
3. Definiteness.
Langkah-langkah yang dituliskan dlaam
algoritma terdifinisi dengan jelas sehingga mudah dilaksanakan oleh pengguna
algoritma.
4. Finiteness
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
5. Effectiveness
Setiap langkah dalam algoritma bisa
dilaksanakan dalam suatu selang waktu tertentu sehingga pada akhirnya
didapatkan solusi sesuai yang diharapkan.
6. Generality
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 algoritma
yang dapat dijadikan acuan dan beberapa contoh pembuatan algoritma yang
mengikuti suatu format tertentu.
Contoh :
Buatlah algoritma untuk melakukan pencaran angka terbesar
dari sekelompok data bilangan bulat yang jumlahnya terbatas.
Solusi dengan Bahasa sehari-hari :
1. Ambil angka pertama, angka pertama ini dianggap
sebagai bilangan yang paling besar.
2. Ambil angka kedua, bandingkan dengan angka pertama, jika angka kedua lebih besar dari angka pertama, maka jadikan angka kedua sebagai angka terbesar, jika tidak, abaikan.
3. Ambil angka ketiga, bandingkan dengan angka terbesar tadi, jika angka ketiga lebih besar dari angka terbesar tadi, maka jadikan angka ketiga sebagai angka terbesar, jika tidak, abaikan.
4. Ulangi langkah 3 ini sampai tidak ada lagi angka yang tersisa dalam himpunan input yang telah ditentukan tadi.
5. Hentikan perbandingan setelah semua angka selesai dibandingkan, maka angka terbesar dalam himpunan tersebut adalah angka yang didapat setelah seluruh angka dibandingkan.
2. Ambil angka kedua, bandingkan dengan angka pertama, jika angka kedua lebih besar dari angka pertama, maka jadikan angka kedua sebagai angka terbesar, jika tidak, abaikan.
3. Ambil angka ketiga, bandingkan dengan angka terbesar tadi, jika angka ketiga lebih besar dari angka terbesar tadi, maka jadikan angka ketiga sebagai angka terbesar, jika tidak, abaikan.
4. Ulangi langkah 3 ini sampai tidak ada lagi angka yang tersisa dalam himpunan input yang telah ditentukan tadi.
5. Hentikan perbandingan setelah semua angka selesai dibandingkan, maka angka terbesar dalam himpunan tersebut adalah angka yang didapat setelah seluruh angka dibandingkan.
Uraian diatas adalah langkah-langkah algoritma yang
dinyatakan dalam Bahasa sehari-hari (Bahasa Indonesia), untuk memudahkan
pengertian maka algoritma tersebut harus dinyatakan dalam notasi sebagai
berikut :
1. N=banyaknya angka dalam himpunan.
2. Indeks = 1
3. Maksimum = angka (indeks)
4. Selama indeks < n, lakukan
a.
Bila angka(indeks) > maksimum, maka
i.
Maksimum = angka(indeks)
ii.
Indeks = indeks + 1
iii.
Ulangi langkah 4 untuk indeks berikut
b.
Bila angka(indeks)<= maksimum, maka
i.
Indeks = indeks + 1
ii.
Ulangi langkah 4 untuk indeks berikut
5. Angka terakhir dalam himpunan = maksimum (angka yang ada dalam variable maksimum).
5. Angka terakhir dalam himpunan = maksimum (angka yang ada dalam variable maksimum).
Notasi algoritma seperti diatas tentu masih sulit
diimplementasikan kedalam suatu Bahasa pemrograman, oleh karena itu maka notasi
algoritma yang baik adalah notasi dalam bentuk Bahasa pemrograman yang simple
dan mendekati kedalam bentuk Bahasa program computer yang akan digunakan,
kebanyakan programmer lebih menyukai algoritma dalam bentuk Bahasa pemrograman
C karena Bahasa tersebut cukup simple dalam notasinya.
Sekian dulu pembahasan mengenai sifat algoritma, untuk
kelanjutannya akan dibahas pada postingan berikutnya.
good job gan
BalasHapuslem lcd touchscreen