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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
aimbat
0 / 0 / 0
Регистрация: 07.10.2013
Сообщений: 81
#1

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

01.11.2013, 03:17. Просмотров 507. Ответов 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
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
01.11.2013, 03:17
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Написать функцию, которая для заданного x посчитает количество единичных битов в этом числе. (C++):

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

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

Написать функцию, которая для заданого целого числа Х вычисляет количество пар (расположенных друг за другом) нулевых битов в этом числе - C++
Помогите плиз)) Нужно срочно на завтра написать прогу на С++. Если можно с блок-схемой. Заранее спасибо.

Написать функцию, которая возвращает количество цифр в целом числе - C++
Помогите, что то я не могу понять задачи, даже не знаю с чего начать)))) 2. Написать функцию, которая возвращает количество цифр в целом...

Как написать программу, которая посчитает количество слов в строке? - C++
Помогите пожалуйста.(:

Количество единичных битов - C++
Название Размерность Тип D 16 вход C 5 выход На входе D двоичное...

1
zss
Модератор
Эксперт С++
6626 / 6188 / 2047
Регистрация: 18.12.2011
Сообщений: 16,132
Завершенные тесты: 1
01.11.2013, 08:59 #2
Я бы print_bits() написал так (чтобы и нули печатала тоже):
C++
1
2
3
4
5
6
7
8
9
10
11
void print_bits (unsigned int n)
{
     int bit;
     for (bit = sizeof(n)*4-1; bit >= 0; bit--)
     {
         if ((n >> bit) & 01)
            putchar ('1');
         else
           putchar ('0');
     }
}
А остальное в целом правильно.
Одно замечание: неприлично смешивать функции из <stdio.h>
и методы из <iostream> в одном проекте.
1
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
01.11.2013, 08:59
Привет! Вот еще темы с ответами:

Написать функцию, которая возвращает количество цифр в целом числе, полученном в качестве аргумента - C++
Кто знает как решить задачу, на С++: написать функцию, которая возвращает количество цифр в целом числе, полученном в качестве аргумента?

Подсчитать количество единичных бит в числе типа double - C++
Как это можно сделать? С целой частью понятно, а с дробной нет. double u; u=555.667; long c=u;//555 int count; unsigned mask...

Разработать функцию, которая для заданного натурального числа N возвращает количество его делителей - C++
И с помощью этой функции для заданного числа A вывести на экран следующее по отношению к нему число, имеющее столько же делителей, сколько...

Написать программу, которая посчитает остаток от деления указанного выражения - C++
нужна программа, которая может посчитать остаток от деления такого выражения: (213^30)/319 -&gt; ostatok


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.