Добавил:
Upload
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз:
Предмет:
Файл:Чет про программирование / туф / 14_numeric / back_number
.pas {$mode objfpc}
var
m, x, x1: integer;
function deg(x, y: integer): integer;
var t: integer;
begin
if y = 0 then begin
result := 1;
exit;
end;
if y mod 2 = 0 then begin
t := deg(x, y shr 1);
result := (t*t) mod m;
end else result := (x * deg(x, y-1)) mod m;
end;
begin
read(m);
for x := 1 to m-1 do begin
x1 := deg(x, m-2);
writeln(x, ' * ', x1, ' = ', (x*x1) mod m);
end;
end.
var
m, x, x1: integer;
function deg(x, y: integer): integer;
var t: integer;
begin
if y = 0 then begin
result := 1;
exit;
end;
if y mod 2 = 0 then begin
t := deg(x, y shr 1);
result := (t*t) mod m;
end else result := (x * deg(x, y-1)) mod m;
end;
begin
read(m);
for x := 1 to m-1 do begin
x1 := deg(x, m-2);
writeln(x, ' * ', x1, ' = ', (x*x1) mod m);
end;
end.
Соседние файлы в папке 14_numeric