【问题描述】求2个正整数的最大公约数 【输入形式】 【输出形式】 【样例输入】32 56 【样例输出】8
时间: 2024-06-15 18:07:37 浏览: 107
最大公约数(Greatest Common Divisor,简称GCD)是指能够同时整除两个或多个数的最大正整数。求两个正整数的最大公约数可以使用欧几里得算法,也称为辗转相除法。
欧几里得算法的基本思想是通过反复用较小数除较大数,然后用余数作为新的较小数,直到余数为0时,较大数即为最大公约数。
以下是求两个正整数的最大公约数的步骤:
1. 将两个正整数分别记为a和b。
2. 如果b等于0,则a即为最大公约数。
3. 否则,计算a除以b的余数,记为r。
4. 将b赋值给a,将r赋值给b。
5. 重复步骤3和步骤4,直到r等于0。
6. 此时,a即为最大公约数。
对于输入样例32和56,按照上述步骤进行计算:
1. a = 32,b = 56。
2. 56不等于0,继续计算。
3. 32除以56的余数为32。
4. 将56赋值给a,将32赋值给b。
5. 32不等于0,继续计算。
6. 56除以32的余数为24。
7. 将32赋值给a,将24赋值给b。
8. 24不等于0,继续计算。
9. 32除以24的余数为8。
10. 将24赋值给a,将8赋值给b。
11. 8不等于0,继续计算。
12. 24除以8的余数为0。
13. 此时,8即为最大公约数。
因此,32和56的最大公约数为8。
阅读全文