编程求取两个整数的最大公约数.欧几里德算法
/*
编程求取两个整数的最大公约数。
Enter two integers: 12 28
Greatest common divisor: 4
提示:分别用两个变量m、n存储两个整数。如果n为0,那么停止操作,
m中的值就是最大公约数,否则计算m除以n的余数,把n保存到m中,并
把余数保存到n中。然后重复上述过程,每次都先判定n是否为0。
*/#include int main(void)
{
int a, b, i, t;
scanf("%d%d", &a, &b);
if(a > b){
t = a;
a = b;
b = t;
}//确保a是最小值
for(i = a;
i >= 2;
i--){
if(a%i == 0 && b%i == 0){
printf("最大公约是:%d\n", i);
break;
}
} if(i == 1){
printf("两数只能同时被1整除\n");
}
return 0;
}/*
16 32
最大公约是:16
akaedu@akaedu-G41MT-D3:~/lin/715_hanshu$ ./zdgys
56 99
两数只能同时被1整除
akaedu@akaedu-G41MT-D3:~/lin/715_hanshu$ ./zdgys
25 85
最大公约是:5*///欧几里德算法#include int gcd(int a, int b)
{
if(b == 0)
return a;
return gcd(b, a%b);
}int main(void)
{
int a, b;
printf("enter two number:\n");
scanf("%d%d", &a, &b);
printf("最大公约数为:%d\n", gcd(a, b));
return 0;
}/*
enter two number:
16 8
最大公约数为:8
*/
http://www.cnblogs.com/frog112111/archive/2012/08/19/2646012.html
推荐阅读
- 刘婵为何不娶关羽的女儿为妻子,而为何要娶张飞的两个女儿
- python青少年编程比赛_第十一届蓝桥杯大赛青少年创意编程组比赛细则
- 说睡
- HTML基础--基本概念--跟着李南江学编程
- 我的软件测试开发工程师书单
- 有人与我谈格局
- ||11|2019年9月9日
- 芯灵思SinlinxA33开发板Linux内核定时器编程
- 关于响应式编程的十个问题
- 活的教导7:两个阶段