C++递归函数求最小公倍数和最大公约数

IDE:codeblocks

日期:2019/12/1

功能:编写一个程序,通过函数的递归调用,求正整数m和n的最大公约数和最小公倍数

#include <iostream>
#include <cmath>
using namespace std;

int f(int m,int n)
{
    int big = m>n?m:n;
    int small =m<n?m:n;
    if(big==small)
        return big;
    else
        return f(small,big-small);
}

int main(void)
{
    int n1,n2;
    cout<<"请输入两个正整数"<<endl;
    cin>>n1>>n2;
    cout<<"最大公约数是"<<f(n1,n2)<<','<<"最小公倍数是"<<n1*n2/f(n1,n2)<<endl;
    return 0;
}


发布了57 篇原创文章 · 获赞 2 · 访问量 1868

猜你喜欢

转载自blog.csdn.net/weixin_43476969/article/details/103337814