描述 给两个正整数a,b(1<=a,b<=10^100),求a和b的最小公倍数 输入 有多组测试数据,每组包含两个正整数a和b
3个回答
展开全部
WIN-TC运行OK 其他的应该没问题
#include<stdio.h>
#define size 5 /*多少组自己改,我设5组*/
void main()
{
int a[size],b[size],i,m=1,n,x;
for(i=0;i<size;i++)
{printf("NO%d: ",i+1);
scanf("%d%d",&a[i],&b[i]);
}
printf("\n\n");
for(i=0;i<size;i++)
{if(a[i]<=b[i]) n=b[i];
else n=a[i];;
x=a[i]*b[i];
while(m<n)
{
if(a[i]%m==0&&b[i]%m==0)
x=x/m;
m++;
}
printf("NO:%d %d\n",i+1,x);
}
getch();
}
/*一组一组输入,如:2 4(回车) 中间有空格 */
满意给分
#include<stdio.h>
#define size 5 /*多少组自己改,我设5组*/
void main()
{
int a[size],b[size],i,m=1,n,x;
for(i=0;i<size;i++)
{printf("NO%d: ",i+1);
scanf("%d%d",&a[i],&b[i]);
}
printf("\n\n");
for(i=0;i<size;i++)
{if(a[i]<=b[i]) n=b[i];
else n=a[i];;
x=a[i]*b[i];
while(m<n)
{
if(a[i]%m==0&&b[i]%m==0)
x=x/m;
m++;
}
printf("NO:%d %d\n",i+1,x);
}
getch();
}
/*一组一组输入,如:2 4(回车) 中间有空格 */
满意给分
本回答被提问者和网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
#include<stdio.h>
int MinDouble(int a,int b)
{
int i;
if(a<b)
{
i=a;
a=b;
b=i;
}
while((i=a%b)!=0)
{
a=b;
b=i;
}
return b;
}
int main(void)
{
int a,b;
while(scanf("%d%d",&a,&b)==2)
{
printf("最小公倍数是:%d\n",a*b/MinDouble(a,b));
}
return 0;
}
int MinDouble(int a,int b)
{
int i;
if(a<b)
{
i=a;
a=b;
b=i;
}
while((i=a%b)!=0)
{
a=b;
b=i;
}
return b;
}
int main(void)
{
int a,b;
while(scanf("%d%d",&a,&b)==2)
{
printf("最小公倍数是:%d\n",a*b/MinDouble(a,b));
}
return 0;
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
int c=b;
if(b%a==0) cout<<"it is "<<b<<endl;
else do{
c++;
}while(c%a!=0||c%b!=0)
cout<<“公倍数”<<c<<endl;
if(b%a==0) cout<<"it is "<<b<<endl;
else do{
c++;
}while(c%a!=0||c%b!=0)
cout<<“公倍数”<<c<<endl;
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询