Pagini recente » Cod sursa (job #476912) | Cod sursa (job #1748278) | Cod sursa (job #1683576) | Monitorul de evaluare | Cod sursa (job #542876)
Cod sursa(job #542876)
#include <fstream>
using namespace std;
#define FIN "euclid2.in"
#define FOUT "euclid2.out"
int gcd(int a,int b)
{
if(b == 0)
return a;
else return gcd(b, a%b);
}
int gcd_norec(int a, int b)
{
if(b == 0)
return a;
if(a%b == 0)
return b;
for(int i = b-1; i >=2; i--){
if(a%i == 0 && b%i == 0)
return i;
}
return 1;
}
int main()
{
int n,a,b;
ifstream fin(FIN);
ofstream fout(FOUT);
fin >> n;
for(int i = 0; i < n; ++i)
{
fin >> a >> b;
//fout << gcd(a,b) << endl;
fout << ((a>b) ? gcd_norec(a,b): gcd_norec(b,a)) << endl;
}
return 0;
}