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

Ниже записана программа. Получив на вход число x, эта программа печатает два числа. Укажите наименьшее из таких чисел x, при вводе которых алгоритм печатает сначала 3, а потом 10. var x, L, M: integer; begin readln (x); L:=0; M:=0; while x > 0 do begin L:=L+1; if (M < x) and (x mod 2 = 1) then begin M: = (x mod 10) * 2; end; x: = x div 10; end; writeln (L); write (M); end.

+5
Ответы (1)
  1. 14 ноября, 08:36
    0
    Отредактируем программу так, чтобы программа сама перебирала значения x, а потом нашла среди них минимальное:

    var x, L, M, j, y: longint;

    xarr: array[1 ... 100] of integer;

    begin

    for x : = - 10000000 to 10000000 do begin

    y : = x;

    while y > 0 do begin

    L : = L + 1;

    if (M < y) and (y mod 2 = 1) then M : = (y mod 10) * 2;

    y : = y div 10;

    end;

    if (L = 3) and (M = 10) then begin j : = j + 1; xarr[j] : = y; end;

    end;

    writeln (xarr[1]);

    end.

    На промежутке x=[-10000000; 10000000] нет чисел, которые бы удовлетворяли заданному условию.
Знаешь ответ на этот вопрос?
Сомневаешься в правильности ответа?
Получи верный ответ на вопрос 🏆 «Ниже записана программа. Получив на вход число x, эта программа печатает два числа. Укажите наименьшее из таких чисел x, при вводе которых ...» по предмету 📕 Информатика, используя встроенную систему поиска. Наша обширная база готовых ответов поможет тебе получить необходимые сведения!
Найти готовые ответы
Похожие вопросы информатике