Cod sursa(job #181694)

Utilizator radu_voroneanuVoroneanu Radu Stefan radu_voroneanu Data 18 aprilie 2008 19:17:28
Problema Algoritmul lui Euclid extins Scor 100
Compilator fpc Status done
Runda Arhiva educationala Marime 0.59 kb
var i,t,x,y,d,a,b,c:longint;
    f,g:text;

procedure euclid(a,b:longint; var d,x,y:longint);
 var x0,y0:longint;
 begin
  if b=0 then begin
   d:=a;
   x:=1;
   y:=0;
  end
  else begin
   x0:=0; y0:=0;
   euclid(b,a mod b,d,x0,y0);
   x:=y0;
   y:=x0-(a div b)*y0;
  end;
 end;

begin
 assign(f,'euclid3.in'); reset(f);
 assign(g,'euclid3.out'); rewrite(g);
 read(f,t);
 for i:=1 to t do begin
  read(f,a,b,c);
  d:=0; x:=0; y:=0;
  euclid(a,b,d,x,y);
  if c mod d<>0 then
   writeln(g,'0 0')
  else
   writeln(g,x*(c div d),' ',y*(c div d));
 end;
 close(f); close(g);
end.