Cod sursa(job #1660118)

Utilizator mci97Mustata Ionut mci97 Data 22 martie 2016 20:19:57
Problema Algoritmul lui Euclid extins Scor 0
Compilator cpp Status done
Runda Arhiva educationala Marime 0.64 kb
#include<iostream>
#include<fstream>
using namespace std;

int cmmdc (int a,int b, int &x, int &y)
{   int x0,y0,d;

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

int main()
{
    int a,b,x,y,d,c,x1,y1,t;
    ifstream f("euclid3.in");

   f>>t>>a>>b>>c;
   while( t>0)
    {       d=cmmdc(a,b,x,y);
            cout<<d<<" "<<x<<" "<<y<<"\n";
            if(c%d!=0) cout<<0<<" "<<0;
            else { x1=(c/d)*x;
          y1=(c/d)*y;
         if (a*x1+b*y1==c) cout<<x1<<" "<<y1;}
         t--;
    }

   return 0;


}