首页 > 代码库 > rwkj 1264 最大公约数与最小公倍数
rwkj 1264 最大公约数与最小公倍数
总提交:1728 测试通过:649
描述
输入两个正整数m和n(1<m, n<1000000000),求其最大公约数和最小公倍数。
输入
有多行,每行2个正整数m和n。
输出
m和n的最大公约数、最小公倍数。
样例输入
16 24
5 7
样例输出
8 48
1 35
提示
要求:编写求最大公约数和最小公倍数的函数。
#include <stdio.h>
int gcd(int m,int n)
{
if(n==0) return m;
else return gcd(n,m%n);
}
int main()
{
int x,y,t;
while(scanf("%d%d",&x,&y)!=EOF)
{
t=gcd(x,y);
printf("%d %d\n",t,x/t*y);
}
}
#include <stdio.h>
int main( )
{ int x,y,m,n;
while( scanf("%d%d" ,&m,&n)==2)
{
m>1;
x= m<n ? m : n;
while (m%x!=0 || n%x!=0)
x--;
y=(m/x)*n;
printf("%d %d\n",x,y);
}
return 0;
}
#include<stdio.h>
int gcd(int a,int b)
{
int t=a%b;
while(t)
{ a=b;b=t;t=a%b; }
return b;
}
int main()
{
int m,n;
while( scanf("%d%d",&m,&n)==2 )
printf("%d %d\n",gcd(m,n),m/gcd(m,n)*n);
return 0;
}