Cod sursa(job #2455502)

Utilizator Maria_TeodoraMaria Teodora Maria_Teodora Data 11 septembrie 2019 20:36:09
Problema Algoritmul lui Euclid extins Scor 0
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.78 kb
#include <fstream>

using namespace std;

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

void functie(int a, int b, int &d, int &x, int &y)
{
     int r,r0,r1,x0,x1,y0,y1,q;
     b=a,r1=b,x0=1,y0=0,x1=0,y1=1;
     while(r1!=0)
     {
         q=r0/r1;

         r=r0-r1*q;
         r0=r1;
         r1=r;

         x=x0-x1*q;
         x0=x1;
         x1=x;

         y=y0-y1*q;
         y0=y1;
         y1=y;
     }
     d=r0;
     x=x0;
     y=y0;
}

int main()
{
    int x,y,a,b,c,T,d;
    f>>T;
    for(T;T!=0;T--)
        {
            f>>a>>b>>c;
            functie(a,b,d,x,y);
            if(c%d==0)
                g<<x*(c/d)<<" "<<y*(c/d)<<endl;
            else
                g<<"0 0"<<endl;
        }

    return 0;
}