Friday, 10 March 2017

Cara Dasar Menyusun Algoritma


blognyonyait.blogspot.com

Sejauh ini tidak ada standarisasi tentang bagaimana menyusun sebuah algoritma. secara prinsip, kita mempunyai kebebasan untuk menyusun bentuk suatu algoritma. Anda dapat menggunakan kata-kata dalam bahasa manusia, pseudokode, atau bahkan diagram alir untuk mewujudkan  suatu algoritma. Anda juga dapat menggunakan cara-cara anda sendiri untuk menuliskan suatu algoritma dengan memegang teguh konsistensi.
Walaupun begitu  ada beberapa hal yang perlu diperhatikan dalam  menyusun suatu algoritma. Menurut Knuth ( 1973, hal. 4) dan juga Horowitz (1999, hal. 1) dalam bukunya menyebutkan , ada lima ciri-ciri penting yang harus dipenuhi  atau dimiliki sebuah algoritma, yaitu berupa finiteness, definiteness, masukan, keluaran , dan efektifitas.
1.      Finiteness, artinya bahwa suatu algoritma harus berakhir  untuk semua kondisi  setelah memproses sejumlah langkah. Jangan sampai suatu algoritma tidak memiliki titik akhir penyelesaiannya.
2.      Definiteness, menyatakan bahwa setiap langkah harus dinyatakan dengan jelas (tidak rancu atau mendua-arti).
3.      Masukan. Setiap algoritma dapat tidak memiliki masukan atau mempunyai satu atau beberapa masukan. Masukan merupakan suatu besaran yang diberikan diawal sebuah algoritma diproses.
4.      Keluaran. setiap algoritma memiliki keluaran, entah hanya sebuah keluaran atau banyak keluaran. Keluaran merupakan besaran yang mempunyai kaitan atau hubungan dengan masukan.
5.      Efektifitas. setiap algoritma diharapkan bersifat efektif, dalam arti semua operasi yang dilaksanakan oleh algoritma harus sederhana dan dapat dikerjakan dalam waktu yang terbatas. Secara prinsip, setiap intruksi dalam algoritma dapat dikerjakan oleh orang dengan hanya mengunakan kertas dan pensil.

menurut Cormen dkk (1994, hal. 2),Sebuah algoritma dikatakan benar, untuk berbagai ragam masukan, jika algoritma berakhit dengan keluaran yang benar. pada keadaan seperti ini algoritma menyelesaikan masalah komputasi yang diberikan.
selain ketentuan-ketentuan yang telah disebutkan , patut pula ditekan kan disini untuk selalu menghindari langkah-langkahnyang merujuk pada contoh berikut, yang membahas algoritma Euclid yang dijelaskan oleh Knuth ( 1973, hal. 2).







Algoritma E ( Algoritma Euclid)
Terdapat dua buah bilanga bulat posip m dan n. Carilah bilangan Faktor Persekutuan Terbesar (Graetest Common Divisor), yakni bilangan positip terbesar yang menjadi pembagi baik m maupun n.
1.      [cari sisa pembagian] Bagi m dengan n dan berikan sisa pembagiannya ke r
2.      [Apakah r bernilai nol?] jika r=0, maka algoritma berakhir, n adalah jawabannya.
3.      [Tukarkan] Aturlah m <-  n , n <-r , dan kembali ke (1).

 
 









Perlu diketahui, notasi [ ] yang ada pada algoritma diatas merupakan keterangan yang diberikan oleh Knuth.
Algoritma seperti itu ditunjukkan untuk bahasa-bahasa pemrograman yang mendukung instruksi loncatan seperti Goto pada BASIC ataupun Pascal. Namun dalam bahasa pemroraman masa sekarang, perintah seperti itu sudah tidak disediakan lagi atau dianjurkan untuk tidak digunakan lagi. Oleh karena itu algoritma didepan dapat tulis ulang menjadi seperti berikut dengan mengeliminasi perujukan ke langkah yang lain:

      1.      r ß sisa pembagian m dengan n
2.      ULANG SELAMA r ≠ 0

     m ß n
n ß r
r ß sisa pembagian m dan n
            AKHIR-ULANG
3.      tampilkan (n)


 
 








contoh kasus : Berapa Faktor Persekutuan Terbesar bilangan  60 dan 24?
                        m = 60
                        n = 14
Langah pemroses algoritma:
1.      Mula-mula r diisi dengan sisa pembagian antara 60 dan 24 . dalam hal ini, r akan berisi 12.
2.      Mengingat r ≠ 0 maka pernyataan  dalam ULANG... AKHIR-ULANG dikerjakan:
·         m diisi dengan 24 ( mß n)
·         n diisi dengan 12 ( n ß r)
3.      Mengingat r = 0 maka pengulangan berakhir.
Dengan demikian, n yang berisi 12 merupakan faktor persekutuan terbesar bilangan 60 dan 24.




1 comments:

Post a Comment

Powered by Blogger.

Beauty

Follow by Email

Breaking News