标签:辗转 gcd 公倍数 1075 个数 int 最大公约数 先求
整体思路
要求两个数的最小公倍数可以先求出两个数的最大公约数 ,
因为两个数的乘积等于其最小公倍数与最大公约数之积
局部思路 求最大公约数的方法——辗转相除法(用辗转相除法求几个数的最大公约数,可以先求出其中任意两个数的最大公约数,再求这个最大公约数与第三个数的最大公约数,依次求下去,直到最后一个数为止。最后所得的那个最大公约数,就是所有这些数的最大公约数。)
代码如下:
#include<stdio.h>
//gcd函数用于求两个数的最大公约数
int gcd(int a,int b){
int t;
//用if控制输入为升序
if(a>b){
t=a;
a=b;
b=t;
}
//辗转相除的代码实现
while(b%a!=0){
t=b%a;
b=a;
a=t;
}
return a;
}
int main(){
int a,b,c;
while(scanf("%d %d",&a,&b)!=EOF){
printf("%d\n",a*b/gcd(a,b));
}
}
标签:辗转,gcd,公倍数,1075,个数,int,最大公约数,先求 来源: https://blog.csdn.net/m0_52336986/article/details/114991978
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。