Cod sursa(job #3134866)

Utilizator Bran_Eduard_DenisBran Eduard Denis Bran_Eduard_Denis Data 31 mai 2023 17:09:35
Problema Algoritmul lui Euclid extins Scor 100
Compilator c-64 Status done
Runda Arhiva educationala Marime 0.84 kb
//
//  main.c
//  Euclid_extins
//
//  Created by Bran Eduard Denis on 31.05.2023.
//

#include <stdio.h>
#include <stdlib.h>

int euclid(int a, int b,int* x, int* y)
{
    if(b == 0)
    {
        *x=1;
        *y=0;
        return a;
    }
    else
    {
        int x1 , y1,d;
        d=euclid(b,a%b,&x1,&y1);
        *x=y1;
        *y=x1-a/b*y1;
        return d;
    }
}

int main() {

    int T,a,b,c,d,x,y;
    FILE *fin,*fout;
    fin=fopen("euclid3.in","rt");
    fout=fopen("euclid3.out","wt");
    if(fin==NULL || fout==NULL)
    {
        printf("Eroare");
        return 0;
    }
    fscanf(fin,"%d",&T);
    for(int i=0;i<T;++i)
    {
        fscanf(fin,"%d %d %d",&a,&b,&c);
        d=euclid(a,b,&x,&y);
        if(c%d)
            fprintf(fout,"0 0\n");
        else
            fprintf(fout,"%d %d\n",x*(c/d),y*(c/d));
    }
    return 0;
}