分别用穷举法和欧几里德算法实现求两个整数的最大公约数,并比较算法的效率。
#include<iostream>
using namespace std;
int gcd(int a,int b){
int t;
if(a<b){
t=a;
a=b;
b=t;
}
while(b){
t=a%b;
a=b;
b=t;
}
return a;
}
int main(){
int a;
int b;
int t;
int y1;
y1=1;
cin>>a;
cin>>b;
if(a>b)
t=a;
else
t=b;
for(int i=t;i>=1;i--)
if(a%i==0&&b%i==0){
if(i>y1)
y1=i;
}
cout<<y1<<endl;
cout<<gcd(a,b)<<endl;
return 0;
}