Cod sursa(job #1817107)

Utilizator maooBompa Mario maoo Data 27 noiembrie 2016 13:04:03
Problema Algoritmul lui Euclid Scor 30
Compilator cpp Status done
Runda Arhiva educationala Marime 0.54 kb
#include<iostream>

using namespace std;
int n;
void read(){
	freopen("euclid2.in", "r", stdin);
	cin >> n;
}

void swap(int &a, int &b){
	int aux = a;
	a = b;
	b = aux;
}

int main(){
	freopen("euclid2.out", "w", stdout);
	read();
	int a, b;
	for (; n; n--){
		cin >> a >> b;
		if (a % b == 0){
			cout << b << endl;
			continue;
		}
		if (b % a == 0){
			cout << a << endl;
			continue;
		}
		if (a < b){
			swap(a, b);
		}
		while (a % b){
			a = a % b;
			swap(a, b);
		}
		cout << b << endl;
	}
	return 0;
}