Cod sursa(job #333512)

Utilizator miculprogramatorA Cosmina - vechi miculprogramator Data 23 iulie 2009 00:17:54
Problema Algoritmul lui Euclid extins Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.84 kb
#include <iostream.h>
#include <fstream.h>
#include <stdio.h>
int a,b,c;
int cmmdc(int a,int b)
{
    int r;
    while(b)
     {
     r=1%b;
     a=b;
     b=r;
    }
    return a;
}
void euclid(int a, int b, int &x, int &y, int &d)      
{
     if(b==0)      
       {
       x=1;      
       y=0;      
       d=a;      
       }      
     else      
     {
     int x1,y1;      
     euclid(b,a%b,x1,y1,d);      
     x=y1;      
     y=x1-a/b*y1;      
     }      
}   
int main()
{
    int d,x,y,i,t;
    ifstream f("euclid3.in");
    ofstream g("euclid3.out");
    f>>t;
    for (i=1;i<=t;i++)
        {
        f>>a>>b>>c;
        euclid(a,b,x,y,d);   
        if(c%d==0) g<<c/d*x<<" "<<c/d*y<<"\n";   
          else g<<"0 0"<<"\n";
          }
    f.close();
    g.close();
    return 0;
}