Вопрос задан 22.10.2026 в 07:05. Предмет Информатика. Спрашивает Видюлин Артём.

Написать программу на Python

1. Дано натуральное число меньше 16. Посчитать количество его единичных битов. Например, если дано число 9, запись которого в двоичной системе счисления равна 10012 (подстрочная цифра 2 справа от числа означает, что оно записано в двоичной системе счисления), то количество его единичных битов равно 2.

Перейти к ответам

Ответы на вопрос

Отвечает Клещевникова Юлианна.

Программа на Python

Задача: Дано натуральное число меньше 16. Необходимо подсчитать количество единичных битов в его двоичной записи.

Решение 1. С помощью функции bin()

Python
n = int(input("Введите число от 1 до 15: "))

if 1 <= n < 16:
count = bin(n).count('1')
print("Количество единичных битов:", count)
else:
print("Число должно быть от 1 до 15")

Объяснение программы

  1. input() — вводит число с клавиатуры.

  2. int() — преобразует введённое значение в целое число.

  3. if 1 <= n < 16 — проверяет, является ли число натуральным и меньшим 16.

  4. bin(n) — переводит число в двоичную систему счисления.

  5. .count('1') — подсчитывает количество единиц в двоичной записи.

  6. print() — выводит результат на экран.

Пример работы программы

Ввод

Введите число от 1 до 15: 9

Вывод

Количество единичных битов: 2

Почему результат равен 2?

Число 9 в двоичной системе записывается как 100121001_2. В этой записи две единицы, поэтому ответ — 2.

Решение 2. Без использования bin()

Можно решить задачу с помощью цикла while:

Python
n = int(input("Введите число: "))
count = 0

while n > 0:
if n % 2 == 1:
count += 1
n = n // 2

print("Количество единичных битов:", count)

Как работает алгоритм:

  • n % 2 — находит остаток от деления числа на 2. Если он равен 1, значит, последний двоичный бит равен единице.

  • count += 1 — увеличивает счётчик единиц.

  • n // 2 — удаляет последний бит двоичной записи числа.

  • Цикл повторяется, пока число не станет равным нулю.

Ответ: Оба способа правильно решают задачу. Первый вариант проще и короче, а второй позволяет понять алгоритм подсчёта единичных битов.

Похожие вопросы

Топ вопросов за вчера в категории Информатика

Последние заданные вопросы в категории Информатика

Задать вопрос