Selasa, 05 April 2011

ALGORITMA EUCLIDEAN

{Diberikan dua buah bilangan bulat tak-negatif m dan n (m>=n). Algoritma Euclidean mencari pembagi bersama terbesar, gcd, dari kedua bilangan tersebut, yaitu bilangan bulat positif terbesar yang habis membagi m dan n.}
1. Jika n= 0 maka
m adalah jawabannya;
stop.
tetapi jika n#0,
lanjutkan ke langkah 2.
2. Bagilah m dengan n dan misalkan r adalah sisanya.
3. Ganti nilai m dengan nilai n dan nilai n dengan nilai r, lalu ulang kembali ke langkah 1.

Dengan menggunakan algoritma Euclidean ini, kita dapat menhitung gcd dari dua buah bilangan bulat sembarang secara sistematis.

Contoh-contohalgoritma yang sudah dijelaskan di atas memberi dua pesan penting. Pertama, sebuah algoritma harus benar. Kedua, algoritma harus berhenti, dan setelah berhenti, algoritma memberi hasil yang benar.

Ciri-ciri Algoritma yang baik: Menurut Donald E.Knuth dalam bukunya yang berjudul the Art Of Computer Programming [KNU73], Algoritma mempunyai 5 ciri penting yaitu:
1. Algoritma harus berhenti setelah mengerjakan sejumlah langkah terbatas Setiap langkah didefenisikan dengan tepat dan tidak berarti dua (ambiguous).
2. Algoritma memiliki nol atau lebih masukan(input). Masukan ialah besaran yang diberikan kepada algoritma untuk diproses.
3. Algoritma mempunyai nol atau lebih keluaran(output). Keluaran dapat berupa pesan atau besaran yang memiliki hubungan dengan masukan.
4. Algoritma harus sangkil (effective). Setiap langkah harus sederhana sehingga dapat dikerjakan dalam sejumlah waktu yang masuk akal.

Ciri-ciri Algoritma yana baik:
1. Tepat sasaran: memenuhi spesifikasi pekerjaan dan bekerja sesuai tujuan
2. Flexible dan portable:
• Flexible untuk dikembangkan lebih lanjut
• Portable untuk digunakan pada berbagai system dan mesin
3. Bersih dari kesalahan system atau lojik
4. Efektif: setiap langkah harus sederhana sehingga dapat dikerjakan dalam sejumlah waktu yang masuk akal.
5. Murah:
• Efisien dalam pengguna piranti memori dan penyimpanan lainnya
• Cepat waktu pelaksanaanya
6. Didokumentasi dengan baik untuk pengoperasian, pemeliharaan dan Pengembangan
7. Algoritma merupakan pemberian (description) pelaksanaan suatu proses
8. Tidak ambiguous: tidak bermakna ganda
9. Harus berhenti setelah mengerjakan sejumlah langkah terbatas

Tidak ada komentar:

Posting Komentar