采用递归算法求最大公约数C++实现

#采用递归算法求最两个数 的大公约数C++实现*

# 算法思路:

建立一个函数,实现三个功能,第一步通过比较大小将较大的数和较小的数对号入座,第二步,采用辗转相除法用大数除以小数取余,第三步判断取余结果是否为零,若是则被除数就是最小最大公约数,若不为零,则调用此函数进行递归;

具体代码如下:

 #include 

using namespace std;
int gcd(int M,int m);
int main(){
int a, b;
cin >> a >> b;
gcd(a, b);

return 0;

}
int gcd(int M,int m){
int temp;
if (M <= m){
temp = m;
m = M;
M = temp;
}
M = M%m;
if (M == 0){
cout << m << endl;
}
else{
gcd(M, m);
}
return 0;
}

你可能感兴趣的:(C++小白,递归算法求两个数,的最大公约数C++实现)