Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.67/3: Рейтинг темы: голосов - 3, средняя оценка - 4.67
Kimster
0 / 0 / 0
Регистрация: 05.01.2014
Сообщений: 36
1

Вывод десятичного числа в двоичном виде

25.04.2015, 20:18. Просмотров 605. Ответов 3
Метки нет (Все метки)

Собственно интересно как реализовать вывод десятичного числа в двоичном виде с помощью битовой маски, последовательно проверяя каждый бит и в зависимости от результата выводить нужное число:
Сейчас вывожу так:
C++
1
2
_itoa(name.x[i], string, 2);
    printf(string);
А хочется примерно так:
C++
1
2
if (тут проверка каждого бита чему он равен) cout <<"1" 
else cout<<"0";
нужно ли в данном случае использовать цикл for, счетчик которого равен 16 (так как число состоит из 16 битов)?
и какую в данном случае использовать маску для проверки?

Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь.

0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
25.04.2015, 20:18
Ответы с готовыми решениями:

Используя битовые операции, реализовать функцию вывода десятичного числа в двоичном виде
Здравствуйте! Есть такая задача: Написать программу, в которой будет...

Введение в рекурсию. Заполнить массив типа char в виде десятичного числа, принимаемого в виде аргумента
Пытался написать функцию, которая заполняет массив типа char в виде десятичного...

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

Вывод данных в двоичном виде без использования интегрированных функций
Давно где - то видел сам алгоритм... Там всё через битовые сдвиги... Но что -...

Рекурсивная функция вычисления разрядности числа в двоичном виде
Есть неработающий код: #include &lt;iostream&gt; using namespace std; ...

3
nmcf
6505 / 5738 / 2613
Регистрация: 14.04.2014
Сообщений: 24,472
25.04.2015, 20:34 2
Для int32:
C++
1
2
3
    int x = 100;
    for (int i = 31; i >= 0; --i)
        std::cout << ((x >> i) & 1);
1
zss
Модератор
Эксперт С++
7460 / 6836 / 4317
Регистрация: 18.12.2011
Сообщений: 18,086
Завершенные тесты: 1
25.04.2015, 21:46 3
У Вас name.x[i] - двоичные числа, поэтому
не надо преобразовывать их десятичные, а выводить так, как написал nmcf.

Т.о., если у Вас исходное число десятичное в виде строки символов, то преобразуете его в двоичное,
например с помощью atoi, а потом выводите с помощью указанного цикла.
0
Kimster
0 / 0 / 0
Регистрация: 05.01.2014
Сообщений: 36
26.04.2015, 17:35  [ТС] 4
Возможно неправильно выразился. Понимаю, что компилятору вообще без разницы в какой системе счисления записано число, потому что хранит он всё равно его в двоичном наборе. В данном случае подразумевался побитовый вывод в цикле, а не с помощью заранее известной функции.
Благодарю за помощь!
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
26.04.2015, 17:35

Вывод числа в двоичном представлении
Задача: представить число long double в двоичном коде. Использую для этого...

Вывести старший и младший байт заданного целого положительного числа в шестнадцатиричном и двоичном виде
Дано целое положительное число , тип int. Вывести старший и младший байт в 16ом...

Найти следующее за заданным число, в двоичном разложении которого столько же единиц, сколько в двоичном разложении числа
Задано натуральное число Н. Требуется написать программу, которая найдет...


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

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

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