每天一道算法题目——最大公约数

题目:求最大公约数
输入一组正整数(数量小于20),输出其最大公约数。
输入:121 33 44 11 1111
输出:11


基本思路:

先求前两个数的的最大公约数,再用这个公约数和第三个数求最大公约数,以此类推。。。。。。。。。。。


#include
using namespace std;
int gcb(int a,int b);
int gcb2(int a,int b);

int main()
{
	int N,m1,m2;
	
	cout<<"你要输入多少个参数:";
	cin>>N;
	
	int *a=new int[N] ;
	
	for(int i=0;i>a[i];
	 	
	 	cout<b,则a=a-b

② 若a12 ) 15-12=3( 12>3 )

12-3=9( 9>3 ) 9-3=6( 6>3 )

6-3=3( 3==3 )

因此,3即为最大公约数*/

int gcb2(int a,int b)
{
	int temp;
	
	while(a!=b)
	{
		if(a>b)
			a=a-b;
		else
			b=b-a;
		
	}
	
	return a;
		
}


你可能感兴趣的:(每天一道算法题)