Задать вопрос
16 августа, 17:08

Укажите наибольшее натуральное число, при вводе которого эта программа напечатает сначала 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.

+1
Ответы (1)
  1. 16 августа, 19:00
    0
    1) цикл проработает 3 раза, но деление на 8 произойдёт дважды

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

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

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

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