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