Предмет: Информатика,
автор: 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'))
Интересные вопросы
Предмет: Русский язык,
автор: 29michman33
Предмет: Английский язык,
автор: ukuzmichuk
Предмет: Қазақ тiлi,
автор: suminpark98
Предмет: Геометрия,
автор: leonxaimov
Предмет: История,
автор: LisSsMay