Pagini recente » Cod sursa (job #2261173) | Cod sursa (job #3210761) | Cod sursa (job #143248) | Cod sursa (job #3294132) | Cod sursa (job #143502)
Cod sursa(job #143502)
#include<fstream.h>
#include<stdio.h>
long cmmdc(long a,long b)
{
long c;
while(b)
{
c=a%b;
a=b;
b=c;
}
return a;
}
void euclid(long a, long b, long *d, long *x, long *y)
{
if (b == 0) {
*d = a;
*x = 1;
*y = 0;
} else {
long x0, y0;
euclid(b, a % b, d, &x0, &y0);
*x = y0;
*y = x0 - (a / b) * y0;
}
}
int main()
{
ifstream f1("euclid3.in");
ofstream f2("euclid3.out");
int T,i;
long a,b,c,d;
long x,y;
f1>>T;
for(i=0;i<T;i++)
{
f1>>a>>b>>c;
d = cmmdc(a,b);
if(c%d)
{
f2<<0<<' '<<0<<'\n';
}
else
{
euclid(a,b,&d,&x,&y);
cout<<x<<' '<<y<<endl;
f2<<x*c/d<<' '<<y*c/d<<'\n';
}
}
f1.close();
f2.close();
return 0;}