Форум программистов, компьютерный форум CyberForum.ru
Наши страницы

Написать функцию, которая для заданного x посчитает количество единичных битов в этом числе. - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Задача про биты http://www.cyberforum.ru/cpp-beginners/thread994322.html
Написать функцию, которая возвращает число, полученное из числа X,в котором все розряды, расположенные правее центральной позиции, заменены на симметрические относительно центра разряды с левой части...
C++ Помогите переписать программу без использования индексации Всем добрый вечер. помогите записать программу без: #include <iostream> #include <string> using std::cout; using std::cin; const int N=50; char* mystrlwr(char* str) { http://www.cyberforum.ru/cpp-beginners/thread994315.html
16 разрядный сумматор C++
У меня есть логические функции дизьюнкции, коньюнкции, сложения по модулю2 и инверсии. Требуется реализовать 16разрядный сумматор чисел со знаком. Тип данных: char Хотел спросить у знающих!...
Написать программу,которая выводит таблицу значений функции >^(x-2)+(x+1). Диапазон изменения аргумента вводится пользователем так же как и шаг пригла C++
Написать программу,которая выводит таблицу значений функции >^(x-2)+(x+1). Диапазон изменения аргумента вводится пользователем так же как и шаг приглашение аргумента.
C++ Написать программу решение квадратного уравнения. Программа должно проверять правельность исходных данных и в случае, если коэффициент при второй степ http://www.cyberforum.ru/cpp-beginners/thread994296.html
Написать программу решение квадратного уравнения. Программа должно проверять правельность исходных данных и в случае, если коэффициент при второй степени неизвестного равен нулю, выводить...
C++ неправильно берёт x,y в классе ellips #include "stdafx.h" #include <iostream> #include <cmath> #include <Windows.h> using std::cout; using std::endl; void setColor(unsigned short F,unsigned short B) { void * HANDLE =... подробнее

Показать сообщение отдельно
aimbat
0 / 0 / 0
Регистрация: 07.10.2013
Сообщений: 81

Написать функцию, которая для заданного x посчитает количество единичных битов в этом числе. - C++

01.11.2013, 03:17. Просмотров 467. Ответов 1
Метки (Все метки)

Написать функцию, которая для заданного x посчитает количество единичных битов в этом числе.
Проблема состоит в том, что все время программа выводит единицу, когда её там и не может быть(
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
#include <iostream>
#include <stdio.h>
#include <conio.h>
 
using namespace std;
 
void print_bits (unsigned int n)
{
     int bit;
     for (bit = sizeof(n)*4-1; bit >= 0; bit--)
     {
         if ((n >> bit) & 01)
            putchar ('1');
     }
}
     void count_bits (unsigned int n)
     {
         int count=0;
         do 
         {
         if (n & 01)
         {
            count++;
            n>>=1;
         }
             else
              n>>=1;
        }
          while (n != '\0');
          cout<<"\nNumber of '1' = " << count << endl;
}
int main ()
{
   unsigned int num; 
   cout << "Input n" << endl;   
   cin >> num;   
   print_bits (num);    
   count_bits (num);       
   system ("PAUSE");
   return 0;
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru