最大公约数循环与递归版本
最大公约数循环与递归版本
简介: 本文讲解,求最大公约数循环与递归版本。最大公约数介绍:最大公因数,也称最大公约数、最大公因子,指两个或多个整数共有约数中最大的一个。a,b的最大公约数记为(a,b),同样的,a,b,c的最大公约数记为(a,b,c),多个整数的最大公约数也有同样的记号。求最大公约数有多种方法,常见的有质因数分解法、短除法、辗转相除法、更相减损法。与最大公约数相对应的概念是最小公倍数
最大公约数循环与递归版本
简介: 本文讲解,求最大公约数循环与递归版本。
最大公约数介绍:最大公因数,也称最大公约数、最大公因子,指两个或多个整数共有约数中最大的一个。a,b的最大公约数记为(a,b),同样的,a,b,c的最大公约数记为(a,b,c),多个整数的最大公约数也有同样的记号。求最大公约数有多种方法,常见的有质因数分解法、短除法、辗转相除法、更相减损法。与最大公约数相对应的概念是最小公倍数,a,b的最小公倍数记为[a,b]。
循环版本: 方法辗转相除法
代码语言:javascript代码运行次数:0运行复制#include <stdio.h>
int main()
{
int a, b, t;
scanf("%d%d", &a, &b);
// 我们需要保证的是a不能比b小
if(a < b)
{
t = a;
a = b;
b = t;
}
while(b != 0)
{
t = b;
b = a % b; //辗转相除:相比第一种思路大大提高了代码的效率
a = t;
}
printf("最大公约数为:%d",a);
return 0;
}
递归版本: 方法辗转相除法
代码语言:javascript代码运行次数:0运行复制#include <stdio.h>
int gcd(int a, int b)
{
return b == 0 ? a : gcd(b, a % b);
}
int main()
{
int a, b, t;
scanf("%d%d", &a, &b);
// 我们需要保证的是a不能比b小
if(a < b)
{
t = a;
a = b;
b = t;
}
printf("最大公约数为:%d",gcd(a, b));
return 0;
}
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。 原始发表:2025-01-20,如有侵权请联系 cloudcommunity@tencent 删除intreturnstdio递归效率 #感谢您对电脑配置推荐网 - 最新i3 i5 i7组装电脑配置单推荐报价格的认可,转载请说明来源于"电脑配置推荐网 - 最新i3 i5 i7组装电脑配置单推荐报价格
上传时间: 2025-07-20 07:39:56
下一篇:Tomcat安装和配置
推荐阅读
留言与评论(共有 10 条评论) |
本站网友 戈蓝 | 5分钟前 发表 |
c) | |
本站网友 中国信托 | 1分钟前 发表 |
辗转相除法 | |
本站网友 下划线怎么用键盘打出来 | 6分钟前 发表 |
gcd(a | |
本站网友 超pp连连看 | 2分钟前 发表 |
&a | |
本站网友 长春一汽高等专科学校 | 25分钟前 发表 |
int b) { return b == 0 ? a | |
本站网友 王益民 | 29分钟前 发表 |
辗转相除法 | |
本站网友 闪图制作软件下载 | 28分钟前 发表 |
循环版本: 方法辗转相除法代码语言:javascript代码运行次数:0运行复制#include <stdio.h> int main() { int a | |
本站网友 黄浦房屋出租 | 19分钟前 发表 |
指两个或多个整数共有约数中最大的一个 | |
本站网友 苏州恩斯特 | 9分钟前 发表 |
也称最大公约数 |