//求两个数的最大公约数 int GreatestCommonDivisor(int a, int b) { int t; if (a < b) { // 交换两个数,使大数放在a的位置上。 t = a; a = b; b = t; } while (b != 0) { // 利用辗转相除法,直到b为0为止。 t = a % b; a = b; b = t; } return a; }
时间: 2024-04-04 07:07:23 浏览: 19
cpp代码-给定两个数,求这两个数的最大公约数
这段代码实现的是求两个数的最大公约数,使用了辗转相除法。具体解释如下:
1. 如果a小于b,则交换a和b的值,保证a是两个数中的较大值。
2. 当b不等于0时,执行辗转相除法,即用a除以b,得到余数t,然后将b赋值为t,a赋值为原来的b,继续执行下一次循环。
3. 当b等于0时,循环结束,此时a的值就是两个数的最大公约数,返回a。
需要注意的是,这段代码中的输入参数a和b应该是正整数。
阅读全文