Tìm ước chung lớn nhất của n phần tử trong danh sách
Mã:
#include <conio.h>
#include <iostream.h>
/*Ham tra ve Uoc chung lon nhat cua a va b*/
int UCLN(int a, int b){
	if(a==b)
		return a;
	else
	if(a>b)
		return UCLN(a-b,b);
	else
		return UCLN(a,b-a);
}
int UC(int a[], int n) {
	if(n==1)
		return a[0];
	else
		return UCLN(a[n-1],UC(a,n-1));
}
/*Chuong trinh chinh*/
void main(){
	clrscr();
	int *a,n;
	cout<<"n = ";
	cin>>n;
	a = new int[n];
	cout<<"Nhap vao "<<n<<" phan tu\n";
	for(int i=0; i<n ; i++){
		cout<<"a["<<i<<"] = ";
		cin>>a[i];
	}
	cout<<"UCLN cua "<<n<<" phan tu vua nhap la "<<UC(a,n);
	getch();
}