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

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

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 19, средняя оценка - 4.74
RuslanM
0 / 0 / 0
Регистрация: 04.07.2013
Сообщений: 15
#1

Посчитать сколько двоичных единиц содержит каждое число - C++

04.07.2013, 20:49. Просмотров 3154. Ответов 8
Метки нет (Все метки)

Дан цифровой массив , посчитать сколько двоичных единиц содержит каждое число
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
04.07.2013, 20:49
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Посчитать сколько двоичных единиц содержит каждое число (C++):

Посчитать сколько двоичных единиц содержит каждое число массива. - C++
Всем доброго дня! Вообщем дали на практике задание: Дан цифровой массив, посчитать сколько двоичных единиц содержит каждое число. Помогите...

Ввести целое число A и посчитать, сколько единиц в числе с 5 бита по 10 бит, включая эти биты - C++
УСЛОВИЕ --- Ввести целое число A и посчитать, сколько единиц в числе с 5 бита по 10 бит, включая эти биты. #include <iostream> ...

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

Посчитать, сколько слов содержит текст произвольной длины. - C++
Посчитать сколько слов, содержит текст поисзвольной длины. Разделителем между словами является символ пробела. Вывести на экран список всех...

Одномерный массив: сколько раз повторяется каждое число - C++
помогите решить такую задачку: есть одномерный массив, в котором n элементов, мы вводим в него числа и надо определить сколько раз...

Определить, сколько раз каждое число используется в массиве - C++
Вот код: #include <iostream> using namespace std; int main() { //двухмерный массив int numbers = {{1, 2, 7} , {2, 5, 3},...

8
Hrobak
289 / 169 / 11
Регистрация: 22.03.2010
Сообщений: 483
Завершенные тесты: 1
04.07.2013, 21:04 #2
Посчитать сколько двоичных единиц содержит каждое число массива.
Практически дословно.
1
Tulosba
:)
Эксперт С++
4396 / 3232 / 297
Регистрация: 19.02.2013
Сообщений: 9,045
04.07.2013, 21:55 #3
Подсчитать число единичных бит в числе
1
svk2140
-8 / 0 / 1
Регистрация: 04.07.2013
Сообщений: 274
04.07.2013, 22:04 #4
нет я тут фигню ввёл) удалите плиз
0
Hrobak
289 / 169 / 11
Регистрация: 22.03.2010
Сообщений: 483
Завершенные тесты: 1
04.07.2013, 22:06 #5
svk2140, в задании сказано подсчитать количество единиц в двоичной записи числа. А ваш код ведь просто выводит количество нулей и единиц в массиве.
1
Croessmah
04.07.2013, 22:07
  #6

Не по теме:

Цитата Сообщение от svk2140 Посмотреть сообщение
всё так запутанно ну неужкли так нельзя зделать....
неужели нельзя первый пост прочитать
Цитата Сообщение от RuslanM Посмотреть сообщение
сколько двоичных единиц содержит каждое число

1
RuslanM
0 / 0 / 0
Регистрация: 04.07.2013
Сообщений: 15
08.07.2013, 02:03  [ТС] #7
А если не сложно весь программный код можно предоставить
0
ninja2
231 / 187 / 7
Регистрация: 26.09.2012
Сообщений: 2,018
Завершенные тесты: 1
08.07.2013, 03:21 #8
Цитата Сообщение от RuslanM Посмотреть сообщение
А если не сложно весь программный код можно предоставить
Я б тебе предоставил там то пару строчек, да щас клавиатура накрылась цифры не нажимаются, могу посоветовать что нужно использовать std::bitset утета фигня тебе поможет http://www.cplusplus.com/reference/bitset/bitset/ .
Просто загоняешь число в контейнер bitset а затем используешь функцию count которая подсчитывает сколько единиц в числе. Отакой в общем алгоритм простой.
1
Hrobak
289 / 169 / 11
Регистрация: 22.03.2010
Сообщений: 483
Завершенные тесты: 1
08.07.2013, 09:22 #9
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#include <iostream>
 
int Count(unsigned a)
{
   return a ? (a & 1) + Count(a >> 1) : 0;
}
 
int main ()
{
    unsigned n;
    std::cout << "Введите количество элементов массива\n";
    std::cin >> n;
    unsigned *mas = new unsigned [n];
    std::cout << "Введите элементы массива\n";
    for (unsigned i =0; i<n; ++i)
    {
        std::cin >> mas[i];
        std::cout << "Количество единиц в двоичной записи числа " << mas[i] << ": " << Count(mas[i]) << std::endl;
    }
        return 0;
}
Можно так, с использованием функции Thinker-a. Или с битсетом:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
#include <iostream>
#include <bitset>
#include <iterator>
#include <vector>
 
int main ()
{
    std::vector <unsigned> numbers;
    std::cout << "Введите элементы массива" << std::endl;
    std::copy (std::istream_iterator <unsigned> (std::cin), std::istream_iterator <unsigned> (), std::back_inserter(numbers));
    for (const unsigned &it: numbers)
        std::cout << "Количество единиц в двоичной записи числа " <<it << ": " << std::bitset <32>(it).count() << std::endl;
    return 0;
}
1
08.07.2013, 09:22
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
08.07.2013, 09:22
Привет! Вот еще темы с ответами:

Подсчитать,сколько раз каждое число встречается в файле - C++
Помогите ,кому нетрудно с лабораторной работой. Задание: подсчитать,сколько раз каждое число встречается в тексте файла number1.txt. Все...

Определить, сколько цифр содержит число - C++
5 задача во вложение помагите в моём быдло коде количество цифр длинного ряда выводит а какая цифра не то значение если есть другие...

Циклы: каждое простое число последовательности увеличить в два раза, посчитать количество простых чисел - C++
Вводится последовательность из N целых чисел. Каждое простое число последовательности увеличить в два раза, посчитать количество простых...

Дано натуральное число N. Выяснить, сколько положительныхэлементов содержит матрица - C++
Помогите аписать программу на Си, вот условие:Дано натуральное число N. Выяснить, сколько положительных элементов содержит матрица Аij ,...


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

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

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