Подсчитать количество единиц в записи данного числа в двоичной системе - C (СИ)

Узнай цену своей работы

Формулировка задачи:

дано натуральное число n. подсчитать количество единиц в записи данного числа в двоичной системе

Решение задачи: «Подсчитать количество единиц в записи данного числа в двоичной системе»

textual
Листинг программы
#include <iostream>
int main()
{
   int n,k=0;
   std::cin >> n;
   while (n)
   {
      k+=n&1;
      n>>=1;
   }
   std::cout << k;
   return 0;
}

Объяснение кода листинга программы

В этом коде:

  1. Включается библиотека iostream, которая позволяет использовать ввод/вывод в программе.
  2. Создается функция main(), которая является точкой входа в программу.
  3. Инициализируются две переменные: n и k. Значение переменной n будет получено с помощью ввода с клавиатуры, а переменная k инициализируется нулем.
  4. Считывается значение переменной n с помощью оператора std::cin >> n.
  5. Запускается цикл while (n), который будет выполняться до тех пор, пока значение переменной n не станет равным нулю.
  6. Внутри цикла выполняется следующая последовательность действий:
    • значение переменной k увеличивается на единицу.
    • значение переменной n сдвигается вправо на одну позицию (вычитается 1 из значения переменной n, но только его младший бит).
  7. После завершения цикла выводится значение переменной k с помощью оператора std::cout << k.
  8. Функция main() возвращает ноль, что означает успешный конец работы программы. Этот код считает количество единиц в двоичной записи числа, введенного с клавиатуры.

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

14   голосов , оценка 3.643 из 5
Похожие ответы