C语言求最大公约数和最小公倍数算法求教!请说具体一些,我实在不明白,搞不清楚

如题所述

最大公约数等于两数之积除以最小公倍数。最小公倍数的求法是从两数之中大的数开始递增,各个比较看是否符合条件。例如求a,b(a<b)的最小公倍数,设置变量i从b开始递增,然后判断if(i%a==0&& i%b==0)是就跳出,此时i就是两个数中的最小公倍数。望采纳,不懂追问。追问

你能结合程序给我说说求最大公约数那段嘛?

追答

你是不了解函数传参吧。int lcd(int u,int v,int h){
return (u*v/h);

}
h就是最小公倍数,传给了子函数lcd中的h,然后 return (u*v/h);返回最大公约数。再在主函数中调用。手打辛苦,望采纳,谢谢。

温馨提示:内容为网友见解,仅供参考
第1个回答  2015-01-04
求a、b的最大公约数就是从ab的较小者到1逐一遍历,如果这个数能被a、b同时整除,就是最大公约数。
求最小公倍数就是 从ab的较大者到a*b逐一遍历,如果这个数能同时整除a、b,就是最小公倍数追问

还是想不清楚,你能把求最大公约数的部分详细讲讲嘛?(结合程序)

第2个回答  2015-01-04

C语言如何求两个数的最大公约数和最小公倍数
printf("最大公约数=%d\\n",gcd(a,b));printf("最小公倍数=%d\\n",lcm(a,b));return 0;}

C语言用函数求最大公约,最小公约数
int zdgys(int x, int y); \/\/求最大公约数 int zxgbs(int x, int y); \/\/求最小公倍数 int a,b,max,min;scanf("%d %d",&a,&b);max = zdgys(a, b); \/\/求最大公约数 min = zxgbs(a, b); \/\/求最小公倍数 printf("最大公约数为%d,最小公倍数为%d",max,min);ret...

C语言中求最大公约数和最小公倍数怎么求
最小公倍数 a*b\/最大公约数(即a*b\/g(a,b))g()是上面命名的一个函数

c语言怎么求最大公约数和最小公倍数
C语言求最大公约数:对两个正整数a,b如果能在区间[a,0]或[b,0]内能找到一个整数temp能同时被a和b所整除,则temp即为最大公约数。求最小公倍数:对两个正整数a,b,如果若干个a之和或b之和能被b所整除或能被a所整除,则该和数即为所求的最小公倍数。C语言是一门面向过程、抽象化的...

c语言,求最大公倍数最小公约数
输入两个正整数m和n, 求其最大公约数和最小公倍数.<1> 用辗转相除法求最大公约数 算法描述:m对n求余为a, 若a不等于0 则 m <- n, n <- a, 继续求余 否则 n 为最大公约数 <2> 最小公倍数 = 两个数的积 \/ 最大公约数 include int main(){ int m, n;int m_cup, n_cup...

C语言:求最大公约数和最小公倍数
include <stdio.h> int main(){ int m, n;int m_cup, n_cup, res; \/*被除数, 除数, 余数*\/ printf("Enter two integer:\\n");scanf("%d %d", &m, &n);if (m > 0 && n >0){ m_cup = m;n_cup = n;res = m_cup % n_cup;while (res != 0){ m_cup = n_cup...

C语言问题,求最小公倍数和最大公约数
bcs=cs;ys=bcs%cs;根据这两句,bcs肯定等于cs,所以ys等于0,循环体错了。假设给出两数是x,y(x>y),最大公约数是a,最小公倍数是b。b=x*y;while(m!=0){ m=x%y;x=y;y=m;} a=x;b=b\/a;

如何用c语言求最大公约数和最小公倍数
scanf("%d%d",&num1,&num2);if(num1<num2) \/\/保证了后面a的数比b大 { temp=num1;num1=num2;num2=temp;} a=num1;b=num2;while(b!=0){ temp=a%b;a=b;b=temp;\/\/使用了辗转相除法 } printf("最大公约数是:%d\\n",a);prinft("最小公倍数是:%d\\n",num1*num2\/a);...

c语言求最大公约数和最小公倍数?
\/* 最大公约数 *\/ int gcd(int a, int b) { if (b == 0) { return a;} else { return gcd(b, a % b);} } \/* 最小公倍数 *\/ int lcm(int a, int b) { int max = a > b ? a : b;while (1) { if (max % a == 0 && max % b == 0) { return max;...

c语言求最大公约数和最小公倍数编程c语言求最大公约数
c语言求最大公约数和最小公倍数编程,c语言求最大公约数很多朋友还不知道,现在让我们一起看看吧!1、代码如下:2、#include 3、int main()4、{ 5、int i,a,b,t;6、scanf(%d%d,&a,&b);\/\/输入数a,b 7、if(a>b)\/\/比较a,b大小,如果a>b则交换,结果为a= 2; i--)\/\/以较小的...

相似回答
大家正在搜