Cod sursa(job #3358219)

Utilizator Palyo_Muset_AndreiPalyo-Muset Andrei Palyo_Muset_Andrei Data 15 iunie 2026 14:18:47
Problema Algoritmul lui Euclid extins Scor 0
Compilator c-64 Status done
Runda Arhiva educationala Marime 0.78 kb
#include <stdio.h>

void euclid(int a, int b, int *c, int *x, int *y)
{
    if (b == 0) {
        *c = a;
        *x = 1;
        *y = 0;
    } else {
        int x0, y0;
        euclid(b, a % b, c, &x0, &y0);
        *x = y0;
        *y = x0 - (a / b) * y0;
    }
}


int main(void)
{
    FILE *fr = fopen("euclid3.in", "r");
    FILE *fw = fopen("euclid3.out", "w");

    if(!fr)
    {
      fprintf(stderr,"Failed to open read file");
      return -1;
    }

    if(!fw)
    {
      fprintf(stderr,"Failed to open write file");
      fclose(fr);
      return -1;
    }

    long long x,y,a,b,c;

    fscanf(fr,"%lld %lld %lld",&a,&b,&c);

    euclid(a, b, &d, &x, &y);

    fprintf(fw, "%lld", x);

    fclose(fr);
    fclose(fw);

    return 0;
}