Ниже записан алгоритм. получив на вход число x, этот алгоритм печатает число m. известно, что x > 100. укажите наименьшее такое (т.е. большее 100) число x, при вводе которого алгоритм печатает 1. паскаль var x, l, m: integer; begin readln(x); l : = x - 12; m : = x + 12; while l < > m do if l > m then l : = l - m else m : = m – l; writeln(m); end.

БадяМэн БадяМэн    3   24.08.2019 23:10    5

Ответы
em130STM em130STM  05.10.2020 17:33
Полный код для решения

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
ПОКАЗАТЬ ОТВЕТЫ
Другие вопросы по теме Информатика