Coba jelasin Menguji algoritme Euclid dari Algoritma dong

Apakah algoritme berjalan seperti yang penulis inginkan?

Beberapa kasus uji cukup menentukan fungsi inti.

Kasus menarik lainnya yaitu dua angka relatif prima 14157 dan 5950.

Tapi kasus pengecualian harus teridentifikasi dan diuji.

Apakah "inelegan" berjalan benar saat R > S, S > R, R = S?

Sama juga dengan "Elegan": B > A, A > B, A = B?

Apa yang terjadi bila salah satu bilangan nol, atau keduanya nol?

("Inelegan" terus berjalan pada kedua kasus; "elegan" terus berjalan saat A = 0.)

Apa yang terjadi bila angka negatif dimasukan?

Bila angka masukan, misalnya domain dari fungsi yang dihitung oleh algoritme/program, mengikutkan hanya integer positif termasuk 0, maka kegagalan pada nol mengindikasikan bahwa algoritme (dan program instansiasinya) adalah sebuah fungsi parsial bukannya fungsi total.

Kesalahan yang terkenal karena eksepsi adalah kegagalan roket Ariane V.Bukti dari kebenaran program menggunakan induksi matematika: Knuth mendemonstrasikan penggunaan induksi matematika untuk versi "pengembangan" dari algoritme Euclid, dan dia mengajukan "metode umum yang digunakan untuk membuktikan validitas dari setiap algoritme."

Tausworthe mengajukan bahwa sebuah pengukuran dari kompleksitas dari sebuah program adalah panjang dari pembuktian kebenarannya.

Menghitung dan meningkatkan algoritme Euclid Elegan (kepadatan) lawan kebaikan (kecepatan): Dengan hanya 6 instruksi dasar, "Elegan" adalah jelas pemenang dibandingkan dengan instruksi "inelegan" dengan 13 instruksi.

Namun, "inelegan" lebih cepat (ia sampai pada HALT dengan langkah lebih sedikit).