#include<stdio.h>
int gcd(int a,int b)//递归法
{
if (b==0) return a;
else
return gcd(b,a % b);
}
int main()
{
int a,b,c;
scanf("%d %d",&a,&b);
c=gcd(a,b);
printf("%d",c);
return 0;
}
//非递归
#include<stdio.h>
int gcd (int a,int b) /*自定义函数求两数的最大公约数*/
{
int temp; /*定义整型变量*/
while(b!=0) /*通过循环求两数的余数,直到余数为0*/
{
temp=a%b;
a=b; /*变量数值交换*/
b=temp;
}
return a; /*返回最大公约数到调用函数处*/
}
int main()
{
int a,b,c;
scanf("%d %d",&a,&b);
c=gcd(a,b);
printf("%d",c);
return 0;
}
//最小公倍数
#include<stdio.h>
int gcd(int a,int b)//递归法
{
if (b==0) return a;
else
return gcd(b,a % b);
}
int gbs(int a,int b)
{
return a*b/gcd(a,b);
}
int main()
{
int a,b,c,d;
scanf("%d %d",&a,&b);
c=gcd(a,b);
d=gbs(a,b);
printf("%d\n",c);
printf("%d\n",d);
return 0;
}
最大公约数最小公倍数
最新推荐文章于 2022-12-03 21:36:01 发布