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

Перевод в двоичную систему - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Проблемы с динамическим списком http://www.cyberforum.ru/cpp-beginners/thread841782.html
Почему-то выводит ошибку во время выполнения программы "Необработанное исключение в "0x501ed442 (msvcr100d.dll)" в "Динамично.exe": 0xC0000005: Нарушение прав доступа при чтении "0x00000000"." ...
C++ Вывод битовых полей изображения Работаю с классом CxImage. Пробую вывести изображения по битовым полям (как на рисунке), но не выходит. Третье поле красного цвета: RGBQUAD rgb; for (i=0; i<W;i++) { for (int j=0; j<H;j++) ... http://www.cyberforum.ru/cpp-beginners/thread841780.html
C++ Предусмотреть использование шаблонного класса для работы с различными типами данных
Собственно само задание. Преобразовать квадратную матрицу, осуществив поворот элементов вокруг центра матрицы на 90 градусов против хода часовой стрелки. Предусмотреть использование шаблонного...
Предусмотреть использование шаблонного класса для работы с различными типами данных C++
Преобразовать квадратную матрицу, осуществив поворот элементов вокруг центра против хода часовой стрелки. Предусмотреть использование шаблонного класса для работы с различными типами данных.
C++ построение данной фигуры http://www.cyberforum.ru/cpp-beginners/thread841761.html
подскажите пожалуйста у меня есть задание необходимо из считанных из файла символов построить данную фигуру, как считать и все ето реализовать я в принцепи знаю, может канешно не до конца, но сам...
C++ Виртуальная функция (реализовать функции, вычисляющие объемы фигур) Задание-(Используя виртуальную функцию, реализовать функции, вычисляющие объемы: правильной пирамиды, параллелепипеда, призмы, усеченной пирамиды.) Напишите алгоритм выполнения программы. С чего... подробнее

Показать сообщение отдельно
Pinokio
2 / 2 / 0
Регистрация: 14.09.2012
Сообщений: 83

Перевод в двоичную систему - C++

18.04.2013, 18:43. Просмотров 1166. Ответов 1
Метки (Все метки)

Есть такой рабочий код

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
#include <iostream>
#include <locale.h>
using namespace std;
int main(void)
{
   setlocale(LC_ALL, "Russian");
   cout<<"Преобразование в двоичную систему"<<endl;
   int num;
   do
   {
      cout<<"Введите целое число >0: ";
      cin>>num;
   } while (num<=0);
   int binValue=0x40000000; // значение двоичного разряда
   cout<<"Двоичное число: ";
   // Делим на 2, пока не получим меньшее число
   while (binValue > num)
      binValue >>= 1;
   while (binValue>0)
   {
      if (num >= binValue)
      {
         cout<<"1";
         num -= binValue;
      } 
      else
         cout<<"0";
      binValue >>= 1;
   }
   cout<<endl;
   return 0;
}
Вопросы
1. Почему начальному значение binValue присвоенно именно 0x40000000;
2. Что дает нам этот фрагмент
C++
1
2
3
   // Делим на 2, пока не получим меньшее число
   while (binValue > num)
      binValue >>= 1;
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru