Задать вопрос
18 мая, 17:49

Укажите наибольшее натуральное число, при вводе которого эта программа напечатает сначала 3, потом - 6. С объяснением

var x, L, M: integer;

begin

readln (x);

L:=0; M:=0;

while x > 0 do begin

L:=L + 1;

if (x mod 8) 0 then

M: = M + x mod 8;

x: = x div 8;

end;

writeln (L); write (M);

end.

+3
Ответы (1)
  1. 18 мая, 19:34
    0
    1) цикл проработает 3 раза, но деление на 8 произойдёт дважды

    2) идём восходящим методом. чтобы число было наибольшим, то нужно помножить наибольший остаток при последней итерации цикла, следовательно остатки в цикле будут 6. 0, 0

    теперь помножим 6 на 8 два раза

    получим следующую цепочку 6->48->384, следовательно 384 наибольшее такое число.

    Ответ: 384
Знаешь ответ?
Не уверен в ответе?
Найди верный ответ на вопрос ✅ «Укажите наибольшее натуральное число, при вводе которого эта программа напечатает сначала 3, потом - 6. С объяснением var x, L, M: integer; ...» по предмету 📙 Информатика, а если ответа нет или никто не дал верного ответа, то воспользуйся поиском и попробуй найти ответ среди похожих вопросов.
Искать другие ответы