function f(x: integer): integer; var L, M: integer; begin L := x - 12; M := x + 12; while L <> M do if L > M then L := L - M else M := M - L; f := M; end;
begin for x := 100 to 100000 do if f(x) = 1 then begin writeln(x); break; end;
end.
Что делает алгоритм из задания? Ищет наибольший общий множитель чисел M и L. То что ответ должен быть 1, означает, что ищем взаимно простые числа
Количество цифр, составляющих алфавит, называется его размерностью.
Источник :
http://informatics-lesson.ru/notations/positional-systems.php#:~:text=%D0%A1%D0%B8%D0%BC%D0%B2%D0%BE%D0%BB%D1%8B%2C%20%D0%BF%D1%80%D0%B8%20%D0%BF%D0%BE%D0%BC%D0%BE%D1%89%D0%B8%20%D0%BA%D0%BE%D1%82%D0%BE%D1%80%D1%8B%D1%85%20%D0%B7%D0%B0%D0%BF%D0%B8%D1%81%D1%8B%D0%B2%D0%B0%D1%8E%D1%82%D1%81%D1%8F,%D0%B5%D0%B5%20%D0%BF%D0%BE%D0%BB%D0%BE%D0%B6%D0%B5%D0%BD%D0%B8%D1%8F%20%D0%B2%20%D0%B7%D0%B0%D0%BF%D0%B8%D1%81%D0%B8%20%D1%87%D0%B8%D1%81%D0%BB%D0%B0.
Проверь информацию там.
Могу вернуть своим вопросом а ты ответом заберёшь их.
var
x: integer;
function f(x: integer): integer;
var
L, M: integer;
begin
L := x - 12;
M := x + 12;
while L <> M do
if L > M then
L := L - M
else M := M - L;
f := M;
end;
begin
for x := 100 to 100000 do
if f(x) = 1 then begin
writeln(x);
break;
end;
end.
Что делает алгоритм из задания? Ищет наибольший общий множитель чисел M и L. То что ответ должен быть 1, означает, что ищем взаимно простые числа
ответ 101