1 / 1 / 0
Регистрация: 17.11.2011
Сообщений: 9
1

Подсчёт единиц и нулей в двоичном коде

17.11.2011, 14:10. Показов 17167. Ответов 12
Метки нет (Все метки)

Просьба помочь написать программу на языке C++, которая определяет и выводит на экран количество единиц и нулей в двоичном представлении числа.
Т.е. я ввожу десятичное число, а программа должна переделать его в двоичное и посчитать количество 0 и 1...
__________________
Помощь в написании контрольных, курсовых и дипломных работ, диссертаций здесь
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
17.11.2011, 14:10
Ответы с готовыми решениями:

Подсчёт нулей в двоичном коде
Есть код который возвращает количество единиц в двоичном представлении целого числа, как...

Определить, каких цифр больше в двоичном представлении натурального числа N-нулей и единиц
Определить, каких цифр больше в двоичном представлении натурального числа N-нулей и единиц....

Определить, каких цифр больше в двоичном представлении натурального числа N – нулей или единиц
Определить, каких цифр больше в двоичном представлении натурального числа N – нулей или единиц.

Ввести строку, затем символ. Вывести количество совпадающих единиц и нулей в двоичном коде каждого символа строки
2. Ввести строку например 123abc, затем ввести символ. Необходимо вывести количество совпадающих...

12
237 / 210 / 29
Регистрация: 08.06.2011
Сообщений: 467
17.11.2011, 14:19 2
C
1
2
3
4
5
6
7
8
9
10
11
12
13
#include <stdio.h>
 
int main()
{
    unsigned n, no, nz;
 
    while (printf("enter a number:\n") > 0 && scanf("%ud", &n) == 1 && n) {
        for (no = 0, nz = 0; n > 0; n >>= 1)
            (n & 1) ? no++ : nz++;
        printf("1s: %d\n0s: %d\n", no, nz);
    }
    return 0;
}
1
1 / 1 / 0
Регистрация: 17.11.2011
Сообщений: 9
17.11.2011, 14:23  [ТС] 3
Цитата Сообщение от Net_Wanderer Посмотреть сообщение
C
1
2
3
4
5
6
7
8
9
10
11
12
13
#include <stdio.h>
 
int main()
{
    unsigned n, no, nz;
 
    while (printf("enter a number:\n") > 0 && scanf("%d", &n) == 1 && n) {
        for (no = 0, nz = 0; n > 0; n >>= 1)
            (n & 1) ? no++ : nz++;
        printf("1s: %d\n0s: %d\n", no, nz);
    }
    return 0;
}
спасибо большое, но можно ли поподробнее расписать, например черезе cin и cout, просто некоторые операции непонятны
0
Диссидент
Эксперт C
26843 / 16749 / 3671
Регистрация: 24.12.2010
Сообщений: 37,496
17.11.2011, 14:29 4
Цитата Сообщение от azoor Посмотреть сообщение
спасибо большое, но можно ли поподробнее расписать, просто некоторые операции непонятны
Вообще-то вежливые мальчики пишут, что именно непонятно. Тут у нас с экстрасенсами туговато, и угадать, что ты понял, а что нет - трудновато.
0
1 / 1 / 0
Регистрация: 17.11.2011
Сообщений: 9
17.11.2011, 14:31  [ТС] 5
Цитата Сообщение от Байт Посмотреть сообщение
Вообще-то вежливые мальчики пишут, что именно непонятно. Тут у нас с экстрасенсами туговато, и угадать, что ты понял, а что нет - трудновато.
ну я попросил расписать через cin и cout т.к. операции printf и scanf мне не известны, хотя знаю, что выполняют ту же функцию что и cin\cout
0
В астрале
Эксперт С++
8042 / 4799 / 655
Регистрация: 24.06.2010
Сообщений: 10,562
17.11.2011, 14:32 6
azoor, Именно. На Си. Гугл в помощь.
0
1 / 1 / 0
Регистрация: 17.11.2011
Сообщений: 9
17.11.2011, 14:34  [ТС] 7
ForEveR, не для этого ли создан форум чтобы помогать написать программу для начинающих, а не послылать в гугл за пояснениями
0
237 / 210 / 29
Регистрация: 08.06.2011
Сообщений: 467
17.11.2011, 14:35 8
забыл кое-что, должно быть:
C
1
scanf("%u", &n)
и
C
1
printf("1s: %u\n0s: %u\n", no, nz);
0
1 / 1 / 0
Регистрация: 17.11.2011
Сообщений: 9
17.11.2011, 14:45  [ТС] 9
Цитата Сообщение от Net_Wanderer Посмотреть сообщение
забыл кое-что, должно быть:
C
1
scanf("%u", &n)
и
C
1
printf("1s: %u\n0s: %u\n", no, nz);
спасибо большое ещё раз, но хотелось бы всё равно чтобы расписано было через cin и cout...
1
237 / 210 / 29
Регистрация: 08.06.2011
Сообщений: 467
17.11.2011, 14:48 10
Цитата Сообщение от azoor Посмотреть сообщение
спасибо большое ещё раз, но хотелось бы всё равно чтобы расписано было через cin и cout...
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
#include <iostream>
 
int main()
{
        unsigned n, no, nz;
 
        while (std::cout << "enter a number:\n" && std::cin >> n && n) {
                for (no = 0, nz = 0; n > 0; n >>= 1)
                        (n & 1) ? no++ : nz++;
               std::cout << "1s: " << no << "\n0s: " << nz << std::endl;
        }
        return 0;
}
1
1 / 1 / 0
Регистрация: 17.11.2011
Сообщений: 9
17.11.2011, 17:48  [ТС] 11
Цитата Сообщение от Net_Wanderer Посмотреть сообщение
n >>= 1)
(n & 1) ? no++ : nz++;
огромное спасибо, но могли бы прояснить выделенные строки
0
Диссидент
Эксперт C
26843 / 16749 / 3671
Регистрация: 24.12.2010
Сообщений: 37,496
17.11.2011, 23:06 12
azoor, от темы твоей отписываюсь
 Комментарий модератора 
Уважительно относитесь к другим участникам форума.
0
1255 / 705 / 359
Регистрация: 20.02.2010
Сообщений: 1,035
18.11.2011, 07:53 13
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#include <iostream>
 
int main(void)
{
    unsigned n, n0 = 0, n1 = 0;
    std::cout << "enter a number: ";
    std::cin >> n;
    while(n > 0)
    {
        if (n % 2 == 0) 
            n0++;
        else
            n1++;
        n /= 2;
    } 
    std::cout << "1s: " << n0 << std::endl;
    std::cout <<"0s: " << n1 << std::endl;
    system("pause");
    return 0;
}
1
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
18.11.2011, 07:53
Помогаю со студенческими работами здесь

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

Подсчет нулей в двоичном числе
Помогите пожалуйста составить программу для подсчета двоичных нулей в переменной размером двойное...

Подсчет единиц в двоичном представлении чисел от A до B
Как быстро можно посчитать количество единиц от A до B, где 0 &lt; A &lt;= B &lt; 10^16. Заранее благодарю!

Подсчет количества единиц в двоичном числе
Дано 4 числа в разных системах счисления. Нужно 1. Перевести число в двоичную систему счисления....


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

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

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2022, CyberForum.ru