Cod sursa(job #573614)

Utilizator andreifirstCioara Andrei Ioan andreifirst Data 6 aprilie 2011 13:53:29
Problema Algoritmul lui Euclid extins Scor 100
Compilator fpc Status done
Runda Arhiva educationala Marime 0.67 kb
var c, d, xx, yy, a, b:int64;
    i, t:longint;
    f, g:text;

procedure euclid (aa, bb:int64; var dd, x, y:int64);
var x0, y0:int64;
  begin
  if bb = 0 then
    begin
    dd:=aa;
    x:=1;
    y:=0;
    end
            else
    begin
    euclid (bb, aa mod bb, dd, x0, y0);
    x:=y0;
    y:=x0-(aa div bb)*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
  readln (f, a, b, c);
  euclid (a, b, d, xx, yy);
  if c mod d <> 0 then writeln (g, '0 0')
                  else writeln (g, xx*c div d, ' ', yy*c div d);
  end;

close (f); close (g);
end.