Ni saya kasi salah satu versi
algoritma Euclidean pelajari ya gan..!!!
Algoritma
Euclidean:
{Diberikan
dua buah bilangan bulat tak-negatif m dan n (m ≥ n ). Algoritma Euclidaen mencari pembagi bersama
terbesasr, 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 langkah 2;
2. Bagilah
m denan n dan misalkan r adalah sisanya.
3. Ganti
nilai m dengan n dan nilai n dengan nilai r, lalu ulang kembali kelengkah
1.
Postingan tentang algoritma kali ini
saya saya dapat referensi dari buku The Art of Computer Programing
menurut Donald E. Knuth, Sebuah algoritma harus mempunyai lima lini
penting:
Create by: M.Khoirudin (Belajar Algoritma)
Create by: M.Khoirudin (Belajar Algoritma)
1. Algoritma harus berhenti setelah mengerjakan beberapa langkah
terbatas. sebagai contoh, tinjau kembali algoritma eucludien pada langkah 1,
jika N = 0 algoritma berhenti. jika nilai N ≠ 0 maka nilai n akan berkurang
akibat langkah 2 dan 3, pada akhirnya nilai n = 0. Program yang tidak pernah
berhenti mengidentifikasikan bahwa algoraitma tersebut tidak benar.
2. Setiap langkah algoritma harus didefinisikan dengan tepat dan tidak berarti-2 (ambiguous). Pembaca harus mengerti apa yang dimaksud dengan m dan n adalah bilangan bulat tak-negatif. contoh lainnya pernyataan "Bagilah p dengan beberapa buah bilangn bulat positif" dapat bermaksud ganda. Berapa yang dimaksud dengan "berapa"? Algoritma akan jelas jika algoritmanya ditulis "bagilah p dengan 10 buah bilangan bulat positif ".
3. Algoritma memiliki nol atau lebih masukan (input). masukan adalah besaran yang diberikan oleh algoritma untuk diproses. Algoritma euclidien mempunyai dua masukan m dan n.
4. Algoritma memiliki nol atau lebih keluaran (output). keluaran dapat berupa pesan atau besaran yang memiliki hubungan dengan masukan. Algoritma Euclidien mempunyai saatu keluaran, yaitu m pada langkah 1 yang merupakan pembagi bersama terbesar dari kedua masukannya.
5.Algoritma haruus sangkil (effective). setiap langkah harus seederrhan sehingga dapat dikerjakan dalam sejumlah waktu yang masuk akal.
Tidak ada komentar:
Posting Komentar