5280和2155的最大公约数是多少 用辗转相除法 拜托了 要详细
来源:学生作业帮 编辑:搜搜做题作业网作业帮 分类:综合作业 时间:2024/04/29 10:58:58
5280和2155的最大公约数是多少 用辗转相除法 拜托了 要详细
急
急
/*题目:输入两个正整数,求其最大公约数.*/
#include <stdio.h>
unsigned gcd ( unsigned,unsigned ) ;
int main( void )
{
unsigned m,n;
printf("请输入两个正整数:");
scanf("%u%u",&m,&n);
printf("%u与%u的最大公约数为:%u\n",m,n,gcd ( m,n ) );
return 0;
}
/* 功能:返回正整数m和n的最大公约数*/
unsigned gcd ( unsigned m,unsigned n )
{
unsigned temp;
if (m<n)
{
temp=m;
m=n;
n=temp;
}
if ( m % n == 0)
{
return n;
}
else
{
return gcd ( n,m % n) ;
}
}
再问: 看不懂啊,这不是辗转相除法吧 请写出过程
再答: 设两数为a、b(b1),则m=kn+xd=kyd+xd=(ky+x)d,则a=mc=(ky+x)dc,b=nc=ycd,故a与b最大公约数成为cd,而非c,与前面结论矛盾】 从而可知gcd(b,r)=c,继而gcd(a,b)=gcd(b,r)。 证毕。
再问: 我要的是这道题的过程,我自己原来算错了。现在弄懂了 。。不过还是谢谢了
#include <stdio.h>
unsigned gcd ( unsigned,unsigned ) ;
int main( void )
{
unsigned m,n;
printf("请输入两个正整数:");
scanf("%u%u",&m,&n);
printf("%u与%u的最大公约数为:%u\n",m,n,gcd ( m,n ) );
return 0;
}
/* 功能:返回正整数m和n的最大公约数*/
unsigned gcd ( unsigned m,unsigned n )
{
unsigned temp;
if (m<n)
{
temp=m;
m=n;
n=temp;
}
if ( m % n == 0)
{
return n;
}
else
{
return gcd ( n,m % n) ;
}
}
再问: 看不懂啊,这不是辗转相除法吧 请写出过程
再答: 设两数为a、b(b1),则m=kn+xd=kyd+xd=(ky+x)d,则a=mc=(ky+x)dc,b=nc=ycd,故a与b最大公约数成为cd,而非c,与前面结论矛盾】 从而可知gcd(b,r)=c,继而gcd(a,b)=gcd(b,r)。 证毕。
再问: 我要的是这道题的过程,我自己原来算错了。现在弄懂了 。。不过还是谢谢了
5280和2155的最大公约数是多少 用辗转相除法 拜托了 要详细
,用“辗转相除法”求得459和357的最大公约数
用辗转相除法求两数的最小公倍数和最大公约数 VB
用辗转相除法求6731和2809的最大公约数.
用“辗转相除法”求得360和504的最大公约数.
用辗转相除法求得5280和12155的最大公约数是______.
用辗转相除法求得378与180的最大公约数是多少?
用辗转相除法求最大公约数!
用辗转相除法求19351和3661的最大公约数和最小公倍数
用辗转相除法求19351和3661的最大公约数和最小公倍数.
用辗转相除法求的459和357的最大公约数是?
1,用“辗转相除法”求得459和357的最大公约数