Cod sursa(job #573633)
Utilizator | Data | 6 aprilie 2011 14:09:34 | |
---|---|---|---|
Problema | Invers modular | Scor | 50 |
Compilator | fpc | Status | done |
Runda | Arhiva educationala | Marime | 0.52 kb |
var d, xx, yy, a, b:longint;
f, g:text;
procedure euclid (aa, bb:longint; var dd, x, y:longint);
var x0, y0:longint;
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, 'inversmodular.in'); reset (f);
assign (g, 'inversmodular.out'); rewrite (g);
readln (f, a, b);
euclid (a, b, d, xx, yy);
writeln (g, xx);
close (f); close (g);
end.