酷代码 AI
菜单
服务商
DeepSeek字节豆包
更多选项

输入两个正整数求最大公因数的代码实现

👀你提供的代码存在问题,它只是在求一个数的除本身之外的最大因数,而不是求两个数的最大公因数。下面是修正后的代码: ```cpp #include <iostream> using namespace std; // 求两个数最大公因数的函数 int gcd(int a, int b) { // 辗转相除法 while (b != 0) { int temp = b; b = a % b; a = temp; } return a; } int main() { int a, b; // 输入两个正整数 cin >> a >> b; // 调用函数并输出结果 cout << gcd(a, b); return 0; } ``` ### 代码解释 - **`gcd`函数**:实现了辗转相除法。辗转相除法的原理是,两个整数的最大公因数等于其中较小的数和两数相除余数的最大公因数。不断用较小数和余数替换原来的两个数,直到余数为 0,此时的除数就是最大公因数。 - **`main`函数**:首先从标准输入读取两个正整数`a`和`b`,然后调用`gcd`函数计算它们的最大公因数,并将结果输出到标准输出。 ######[AI问答 | 312点数解答 | 2026-08-15 21:03:50]

相关提问
本站限时免费提问中
实用工具查看更多
Linux在线手册 [开发类]
Jquery在线手册 [开发类]
今日油价 [生活类]
图片互转base64 [开发类]
时间转换器 [开发类]