Cod sursa(job #984441)

Utilizator classiusCobuz Andrei classius Data 14 august 2013 15:25:06
Problema Algoritmul lui Euclid extins Scor 0
Compilator cpp Status done
Runda Arhiva educationala Marime 0.58 kb
#include <fstream>

using namespace std;

ifstream f("euclid3.in");
ofstream g("euclid3.out");

void euclid(int a,int b,int *d,int *x,int *y){

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

int main()
{
    int a,b,c;
    f>>a;

    while(f>>a>>b>>c){
        int x,y,d;

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

        if(c%d==0)
        g<<x*(c/d)<<" "<<y*(c/d)<<'\n';
        else
            g<<0<<" "<<0<<'\n';
    }

    return 0;
}