✨ C++辗转相除法详解 🔄 辗转相除法c++

2025-03-02 23:42:56
导读 辗转相除法,又称欧几里得算法,是一种用于计算两个正整数最大公约数(Greatest Common Divisor, GCD)的经典方法。这种方法不仅简单易

辗转相除法,又称欧几里得算法,是一种用于计算两个正整数最大公约数(Greatest Common Divisor, GCD)的经典方法。这种方法不仅简单易懂,而且非常高效,是编程竞赛和实际应用中常用的算法之一。

📚 算法原理:

假设我们有两个正整数a和b,且a>b。辗转相除法的基本思想是用较大的数除以较小的数,然后用出现的余数(第一余数)去除除数,再用出现的余数(第二余数)去除第一次的余数,如此循环,直到余数为零为止。此时,最后一个非零余数就是这两个数的最大公约数。

🛠️ 代码实现:

```cpp

include

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 num1 = 48, num2 = 18;

cout << "The GCD of " << num1 << " and " << num2 << " is " << gcd(num1, num2) << endl;

return 0;

}

```

🌈 示例输出:

```

The GCD of 48 and 18 is 6

```

掌握辗转相除法不仅可以帮助你解决许多与数论相关的编程问题,还能加深对数学和计算机科学的理解。💪

编程 C++ 算法

郑重声明:本文版权归原作者所有,转载文章仅为传播更多信息之目的,如作者信息标记有误,请第一时间联系我们修改或删除,多谢。