Предмет: Информатика,
автор: sagaevmasud
Дано положительное целое число. Найдите количество нулей в его двоичной записи.
Формат входных данных
Вводится одно число n (1 ≤ n ≤ 109).
Формат выходных данных
Выведите одно число - количество нулей в двоичной записи числа n.
входные данные выходные данные
5
1
686579304
15
DaniilKirillin:
Вообще это Отбор на олимпиадное программирование в МШП, угадал)?
Ответы
Автор ответа:
2
Ответ:
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
Автор ответа:
1
Ответ:
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'))
Похожие вопросы
Предмет: Русский язык,
автор: ridgi
Предмет: Русский язык,
автор: kama131860
Предмет: Русский язык,
автор: alime1331
Предмет: Математика,
автор: Аноним
Предмет: Физика,
автор: школьник825