天天看點

求最大公約數(歐幾裡德算法)

歐幾裡德算法的思想:

歐幾裡德算法的思想基于輾轉相除法的原理,輾轉相除法是歐幾裡德算法的核心思想,歐幾裡德算法說白了其實就是輾轉相除法的計算機算法的實作而已。下面我們先說說輾轉相除法,輾轉相除法的内容:如果用gcd(a,b)來表示a和b的最大公約數,那麼根據輾轉相除法的原理,有gcd(a,b)=gcd(b,a mod (b)),其中mod()表示模運算,并且不妨讓a>b,這樣友善于模運算。

#include<bits/stdc++.h>
using namespace std;
void gcd(int a,int b){
	if(a%b==0)
		cout<<b<<endl;
	else
		gcd(b,a%b);
}
int main(){
	int a,b;
	while(cin>>a>>b){
		gcd(a,b);
	}
} 
           

繼續閱讀