Дано положительное целое число. Найдите количество нулей в его двоичной записи. Формат входных данных
Вводится одно число n (1 ≤ n ≤ 109).

Формат выходных данных
Выведите одно число - количество нулей в двоичной записи числа n.

входные данные выходные данные
5
1
686579304
15

asaparova80 asaparova80    3   01.11.2020 16:20    3

Ответы
Lissabone Lissabone  01.12.2020 16:25

program z1;

var a,k:integer;

begin

k:=0;

read(a);

while a>0 do

begin

if a mod 2 = 0 then k:=k+1;

a:=a div 2;

end;

write(k)

end.

Объяснение:

Используем цикл с предусловием

Проверяем является ли остаток от деления на 2 нулём, если да, то увеличиваем переменную k на 1

Присваиваем переменной a значение целочисленного деления на 2

ПОКАЗАТЬ ОТВЕТЫ
nazarpetrenko1 nazarpetrenko1  01.12.2020 16:25

n = int(input())

b = ''

while n > 0:

   b = str(n % 2) + b

   n = n // 2

print(b.count('0'))

Объяснение:

n = int(input())

b = ''

while n > 0:

   b = str(n % 2) + b

   n = n // 2

print(b.count('0'))

ПОКАЗАТЬ ОТВЕТЫ
Другие вопросы по теме Информатика

Популярные вопросы