Pagini recente » Rating Bogdan Apintei (apinteibogdan) | Profil ralukutza_k_2oo7 | Monitorul de evaluare | Istoria paginii utilizator/bonny | Cod sursa (job #209945)
Cod sursa(job #209945)
#include <iostream>
#include <fstream>
#include<stdio.h>
//#include <cstring>
//#include <cmath>
using namespace std;
int cmmdc (int a, int b){
if (!b) return a;
return cmmdc(b, a%b);
}
void euclid (int a, int b, int *d, int *x, int *y) {
if (b==0) { *d=a; *x=1; *y=0; }
else {
int x0, y0;
euclid(b, a%b, d, &x0, &y0);
*x=y0;
*y=x0-(a/b)*y0;
}
}
int main()
{
ifstream iFis("euclid3.in");
ofstream oFis("euclid3.out"); // freopen("euclid3.out", "w", stdout);
int a,b,c,d,x,y,t, cc, aa, dd;
iFis>>t; cout<<t;
for(int i=t; i>=1; i--){
iFis>>a; iFis>>b; iFis>>d;
c=cmmdc(a,b);
euclid(a,b,&c,&x,&y); cout<<a<< " "<<b<<" "<<c<<" "<<d<<" "<<endl;
if(d%c==0) oFis<<x*(d/c)<<" "<<y*(d/c)<<endl; // printf("%d %d\n", x*c/a,y*c/a);
else oFis<<"0 0\n"; // printf("0 0\n");
}
return 0;
}