Pagini recente » Cod sursa (job #742625) | Cod sursa (job #1711249) | Cod sursa (job #248119) | Cod sursa (job #2597141) | Cod sursa (job #3136507)
#include <stdio.h>
#include <stdlib.h>
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 ()
{
int n = 0;
FILE *file_in = NULL;
FILE * file_out = NULL;
if((file_in = fopen("euclid3.in","r")) == NULL)
{
perror("EROARE LA DESCHIDEREA FISIERULUI DE CITIRE !");
exit(-1);
}
if((file_out = fopen("euclid3.out","w")) == NULL)
{
perror("EROARE LA DESCHIDEREA FISIERULUI DE SCRIERE !");
exit(-1);
}
fscanf(file_in,"%d",&n);
int i = 0;
int a = 0;
int b = 0;
int c = 0;
int x = 0;
int y = 0;
for(i=0;i<n;i++)
{
fscanf(file_in,"%d %d %d",&a,&b,&c);
euclid(a,b,&c,&x,&y);
fprintf(file_out,"%d %d \n",x,y);
}
return 0;
}