Вопрос задан 14.11.2018 в 00:20. Предмет Информатика. Спрашивает Закиров Ренат.

Ниже записан алгоритм. Получив на вход число 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.
0 0
Перейти к ответам

Ответы на вопрос

Внимание! Ответы на вопросы дают живые люди. Они могут содержать ошибочную информацию, заблуждения, а также ответы могут быть сгенерированы нейросетями. Будьте внимательны. Если вы уверены, что ответ неверный, нажмите кнопку "Пожаловаться" под ответом.
Отвечает Каракулова Виктория.
Полный код для решения

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
0 0

Топ вопросов за вчера в категории Информатика

Последние заданные вопросы в категории Информатика

Задать вопрос