编程提示用户输入两个正整数,并求出它们的最大公约数,分别实现下 面三种算法:
来源:学生作业帮 编辑:拍题作业网作业帮 分类:综合作业 时间:2024/04/28 17:09:44
编程提示用户输入两个正整数,并求出它们的最大公约数,分别实现下 面三种算法:
算法1:设输入的两个正整数为n1和n2,把最大公约数存储到变量gcd中,
gcd的初值为1,依次检查k=2,3等等是否为公约数,找到一个新
的公约数时则用k的值更新gcd,直到k大于n1或n2.此时的gcd即
为所求的最大公约数.
算法2:设输入的两个正整数为n1和n2,首先求n1和n2的最小值d,然后
依次检验d,d-1,d-2,...,2,1是否是n1和n2的公约数,这样
找到的第一个公约数即为最大公约数.
算法3:设输入的两个正整数为n1和n2,其最大公约数为gcd(n1,n2),则:
如果n1%n2为0,则gcd(n1,n2)等于n2,否则gcd(n1,n2)等于
gcd(n2,n1 % n2).
算法1:设输入的两个正整数为n1和n2,把最大公约数存储到变量gcd中,
gcd的初值为1,依次检查k=2,3等等是否为公约数,找到一个新
的公约数时则用k的值更新gcd,直到k大于n1或n2.此时的gcd即
为所求的最大公约数.
算法2:设输入的两个正整数为n1和n2,首先求n1和n2的最小值d,然后
依次检验d,d-1,d-2,...,2,1是否是n1和n2的公约数,这样
找到的第一个公约数即为最大公约数.
算法3:设输入的两个正整数为n1和n2,其最大公约数为gcd(n1,n2),则:
如果n1%n2为0,则gcd(n1,n2)等于n2,否则gcd(n1,n2)等于
gcd(n2,n1 % n2).
算法一:
#include
main()
{
int n1,n2,gcd=1,k=2;
scanf("%d %d",&n1,&n2);
while(k0;i--)
if(n1%i==0&&n2%i==0)
printf("最大公约数为:%d\n",i);
}
算法三:
#include
void main()
{
int gcd(int n1,int n2);
int n1,n2,k;
scanf("%d %d",&n1,&n2);
k=gcd(n1,n2);
printf("最大公约数为:%d\n",k);
}
int gcd(int n1,int n2)
{
if(n1%n2==0)
return n2;
else
return gcd(n2,n1%n2);
}
希望能帮助你,如有疑问请登录http://we.share.lc在线为您解答!
#include
main()
{
int n1,n2,gcd=1,k=2;
scanf("%d %d",&n1,&n2);
while(k0;i--)
if(n1%i==0&&n2%i==0)
printf("最大公约数为:%d\n",i);
}
算法三:
#include
void main()
{
int gcd(int n1,int n2);
int n1,n2,k;
scanf("%d %d",&n1,&n2);
k=gcd(n1,n2);
printf("最大公约数为:%d\n",k);
}
int gcd(int n1,int n2)
{
if(n1%n2==0)
return n2;
else
return gcd(n2,n1%n2);
}
希望能帮助你,如有疑问请登录http://we.share.lc在线为您解答!
编程提示用户输入两个正整数,并求出它们的最大公约数,分别实现下 面三种算法:
循环结构练习1.编程题:输入两个正整数,并使用“辗转相除法”计算输出它们的最大公约数和最小公倍数.2.编程题:计算1-3
C语言编程:输入两个正整数m和n,求它们的最大公约数.
JAVA编程 输入两个正整数m和n,输出它们的最小公倍数和最大公约数
编程C语言:输入两个正整数m,n,计算它们的最大公约数和最小公倍数
:输入两个正整数m和n,求出它们的最大公约数和最小公倍数.
设计一个C语言的程序能实现输入两个正整数m,n能求出其最大公约数和最小公倍数
输入两个正整数m和n,求它们的最大公约数和最小公倍数(本题要求用辗转相除法实现)
谁能帮解答下 编程题 1.输入两个正整数m和n,求其最大公约数和最小公倍数.
VB编程用欧几里得算法求俩个正整数的最大公约数
输入两个正整数m和n,求它们的最大公约数和最小公倍数.(习题6.1)
编写程序,输入两个正整数m和n,输出它们的最小公倍数和最大公约数