早教吧 育儿知识 作业答案 考试题库 百科 知识分享

如何用while循环求最大公约数算法:1)a除以b,得余数r;2)如果r=0,则停止:最大公约数是b;3)否则,让a=b,让b=r,回到步骤一.实现这个算法并用它求12,345和987,654,312的最大公约数,考虑如何用

题目详情
如何用while循环求最大公约数
算法:1)a除以b,得余数r; 2)如果r = 0,则停止:最大公约数是b; 3)否则,让a=b,让b=r,回到步骤一.
实现这个算法并用它求12,345和987,654,312的最大公约数,考虑如何用while循环解释这个算法.(借助trace table跟踪表)
用Python语言
▼优质解答
答案和解析
求最大公约数要用到辗转相除法,我不了解python语言,下面是用C写的,可基本原理都是一样的,希望有帮助.
#include
int main(void)
{
int m,r,n;
int s;
printf("input two numbers:\n");
scanf("%d%d",&m,&n);
s =m*n;
while(n!=0)
{
r =m%n;
m =n;
n=r;
}
printf("最大公约数是:%d\n",m);
return 0;
}
请注意987,654,312是否超过了int类型的最大值.
看了 如何用while循环求最大公...的网友还看了以下: