Cod sursa(job #290494)

Utilizator Cristian_BBerceanu Cristian Cristian_B Data 27 martie 2009 23:58:52
Problema Algoritmul lui Euclid extins Scor 0
Compilator fpc Status done
Runda Arhiva educationala Marime 0.79 kb
var x,y,d,i,t,a,b,c:longint;
    ok:boolean;
    f,g:text;
function cmmdc(m,n:longint):longint;
var aux,r:longint;
begin
 if (m=0) and (n<>0) then
 cmmdc:=n;
 if (m<>0) and (n=0) then
 cmmdc:=m;
 if (m<>0) and (n<>0) then
 begin
 if m<n then
 begin
  aux:=m;
  m:=n;
  n:=aux;
 end;

 while r<>0 do
 begin
  r:=m mod n;
  m:=n;
  n:=r;
 end;
cmmdc:=m;
end;

end;
BEGIN
assign(f,'euclid3.in');
reset(f);
assign(g,'euclid3.out');
rewrite(g);
readln(f,t);
for i:=1 to t do
begin
 readln(f,a,b,c);
  d:=cmmdc(a,b);
 if c mod d<>0 then
  writeln(g,0,' ',0)
  else
  Begin
    a:=a div d;
    b:=b div d;
    c:=c div d;
    x:=0;
    while (c-a*x) mod b<>0 do
     x:=x+1;
     y:=(c-a*x) div b;
     writeln(g,x,' ',y);
  End;
end;
close(g);
close(f);
END.