基本欧几里德算法的C程序?
在这里,我们将看到用于找到两个数字的GCD的欧几里得算法。使用欧几里得算法可以很容易地找到GCD(最大公约数)。有两种不同的方法。一个是迭代的,另一个是递归的。在这里,我们将使用递归欧几里得算法。
算法
欧几里得算法(a,b)
begin if a is 0, then return b end if return gcd(b mod a, a) end
示例
#include<iostream> using namespace std; int euclideanAlgorithm(int a, int b) { if (a == 0) return b; return euclideanAlgorithm(b%a, a); } main() { int a, b; cout << "Enter two numbers: "; cin >> a >> b; cout << "GCD " << euclideanAlgorithm(a, b); }
输出结果
Enter two numbers: 12 16 GCD 4