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

    xiaoxiao2023-11-13  127

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

    # 算法思路:

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

    具体代码如下:

    #include <iostream>

    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; }

    最新回复(0)