ten count 百度云37-40:编程求最大公约数与最小公倍数

来源:百度文库 编辑:高校问答 时间:2024/04/29 13:32:14
主函数中输入两个正整数,调用一个函授求其最大公约数和最小公倍数,再调用一个函数将结果输出

#include"stdio.h"
int maxy(int x,int y)
{ int m,i;
m=x>y?y:x;
for(i=m;i>0;i--)
if(!(x%i)&&!(y%i)) return i;
}
void minb(int x,int y,int z)
{ printf("最小公倍数为:%d",x*y/z);
}
main()
{ int a1,a2,mxy;
printf("请输入两个正整数");
scanf("%d%d",&a1,&a2);
mxy=maxy(a1,a2);
printf("最大公约数:%d",mxy);
minb(a1,a2,mxy);
getch();
}

#include "stdio.h"
void main()
{int fun(int,int);
void print(int,int);
int x,y;
scanf("%d,%d",&x,&y);
printf("\n");
print(fun(x,y),x*y/fun(x,y));
getch();
}
int fun(int x,int y)
{ int i;
for(i=1;;i++)
if(i*x%y==0) return(i*x);
}
void print(int x,int y)
{printf("%d,%d\n",x,y);}

a=12
b=18
ys=maxys(a,b)
? alltrim(str(a))+"和"+alltrim(str(b))+"的最大公约数是:"+alltrim(str(ys));
+",最小公倍数是:"+alltrim(str(a*b/ys))
return

function maxys &&定义函数名
parameters a0,b0 &&定义函数参数
for i=1 to a0/2 &&最大公约数不会超过a0/2
if a0%i=0 .and. b0%i=0 &&如果i能同时整除a0,b0
c0=i &&则记住i
endif
endfor
return c0

#include <iostream.h>
int max(int a,int b) //最大公约数
{
if(a%b==0)
return b;
else
return max(b,a%b);
}
void main()
{
int a,b;
int m=max(a,b); //最大公约数
int n=a*b/m; //最小公倍数
}

我也在学c 这是我们老师给我们的答案
如有问题qq联系 459894738
main()
{int x,y,temp,a,b,r;
scanf(\"%d,%d\",&x,&y);
if(x<y)
{temp=x,x=y,y=temp;}
temp=x*y;
while((y%x)=0)
{r=y%x;
y=x;
x=r;}
a=x;
b=temp/a;
printf(\"%d,%d\",a,b);
}