描述编写求最大公约数的函数gcd和最小公倍数的函数lcm。 可以使用函数的嵌套调用,使用lcm的调用gcd函数

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了描述编写求最大公约数的函数gcd和最小公倍数的函数lcm。 可以使用函数的嵌套调用,使用lcm的调用gcd函数相关的知识,希望对你有一定的参考价值。

下列主函数可用于测试lcm函数和gcd函数:
int main()

int m, n;
cin >> m >> n;
cout << "gcd(" << m << "," << n << ") = " << gcd(m,n) << endl;
cout << "lcm(" << m << "," << n << ") = " << lcm(m,n) << endl;
return 0;

输入输入两个int型变量,m和n,中间用空格分开。
输出输出m和n的最大公约数和最小公倍数

参考技术A #include<iostream>
using namespace std;

int gcd(int x, int y)

    if(y == 0)
        return x;
    return gcd(y, x%y);


int lcm(int x, int y)

    return x * y / gcd(x, y);


int main() 
 
    int m, n; 
    cin >> m >> n; 
    cout << "gcd(" << m << "," << n << ") = " << gcd(m,n) << endl; 
    cout << "lcm(" << m << "," << n << ") = " << lcm(m,n) << endl;
    return 0; 

本回答被提问者采纳

关于gcd函数解最大公约数

数学知识:由于两个数的乘积等于这两个数的最大公约数与最小公倍数的积.即(a,b)×[a,b]=a×b.所以,求两个数的最小公倍数,就可以先求出它们的最大公约数,然后用上述公式求出它们的最小公倍数.
例如,求[18,20],即得[18,20]=18×20÷(18,20)=18×20÷2=180.
求几个自然数的最小公倍数,可以先求出其中两个数的最小公倍数,再求这个最小公倍数与第三个数的最小公倍数,依次求下去,直到最后一个为止.最后所得的那个最小公倍数,就是所求的几个数的最小公倍数.

 

编程知识:

int gcd(int a,int b){  //声明函数
if (b==0) return a;
else return gcd(b,a%b);}    

下面是完整算法:                                            下面是写法:
int gcd(int a,int b) # include<stdio.h>
{ int gcd(int a,int b)
    int c,r;                                     {if(b==0) return a;                                              
if(a<b){c=a;a=b;b=c;} else return gcd(b,a%b);}
r=a%b; int main
while(r) {}
{
a=b;b=r;r=a%b;
}
return b;
}

下面是用法:

gcd(x,y) 表示x和y的最大公约数






























以上是关于描述编写求最大公约数的函数gcd和最小公倍数的函数lcm。 可以使用函数的嵌套调用,使用lcm的调用gcd函数的主要内容,如果未能解决你的问题,请参考以下文章

求GCD和LCM,即指求最大公约数和最小公倍数。

C语言编程

关于gcd函数解最大公约数

C语言函数编写,求两个整数的最大公约数和最小公倍数

编写一个 函数把华氏温度转化为 摄氏温度,转换公式用递归的方法 编写 函数求Fibonacci级数。编写函数求两个数的最大公约数和最小公倍数

编写两个函数,分别求最大公约数和最小公倍数python