本文主要是介绍最大公因数:欧几里得算法,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
简述
求两个数字 m和n 的最大公因数,假设r是m%n的余数,只要n不等于0,就一直执行
m=n,n=r
举例
以18和12为例
m n r
18 % 12 = 6
12 % 6 = 0
6 0
所以最大公因数为:6
代码实现
#include<iostream>
using namespace std;//greatest common divisor
unsigned long long gcd(unsigned long long m,unsigned long long n)
{while(n!=0){unsigned long long r=m%n;m=n;n=r;}return m;
}int main(void)
{int result=gcd(18,12);cout<<"18和12的最大公因数为:"<<result<<endl;return 0;
}
这篇关于最大公因数:欧几里得算法的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!