Укажите величайшее число x, при вводе которого алгоритм печатает сначала 5,

Укажите величайшее число x, при вводе которого метод печатает поначалу 5, а позже 8.
var x, L, M: integer;
begin
readln(x);
L := 0; M := 0;
while x gt; 0 do begin
M := M + 1;
if x mod 2 lt;gt; 0 then
L := L + 1;
x := x div 2;
end;
writeln(L);
writeln(M);end.

Задать свой вопрос
1 ответ
Основное осознать что же делает эта программка. А она во-первых находит сколько единиц будет в двоичной записи числа x, для этого употребляется переменная L. И во-вторых обретает количество цифр в двоичной записи числа x, для этого употребляется переменная M. Сейчас мы можем переформулировать условие задачки так: найти максимальное число записываемое в двоичной системе 8-ю цифрами и содержащее в этой записи ровно 5 единиц. Явно наибольшим из всех таких чисел будет такое, у которого в старших разрядах будут единицы, а в младших разрядах нули, т.е. число 11111000, в десятичной системе это число записывается как 248.
Ответ: 248.
, оставишь ответ?
Имя:*
E-Mail:


Добро пожаловать!

Для того чтобы стать полноценным пользователем нашего портала, вам необходимо пройти регистрацию.
Зарегистрироваться
Создайте собственную учетную запить!

Пройти регистрацию
Авторизоваться
Уже зарегистрированны? А ну-ка живо авторизуйтесь!

Войти на сайт