begin Write('Введите натуральное число: '); Readln(n); k := 0; if n > 1 then begin repeat if n mod 2 = 1 then k := k + 1; n := n div 2 until n < 2 end; Writeln('Количество единиц в двоичном представлении равно ', k + 1) end.
Тестовое решение: Введите натуральное число: 152 Количество единиц в двоичном представлении равно 3
n, k: longint;
begin
Write('Введите натуральное число: '); Readln(n);
k := 0;
if n > 1 then
begin
repeat
if n mod 2 = 1 then k := k + 1;
n := n div 2
until n < 2
end;
Writeln('Количество единиц в двоичном представлении равно ', k + 1)
end.
Тестовое решение:
Введите натуральное число: 152
Количество единиц в двоичном представлении равно 3