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

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

Войти
Регистрация
Восстановить пароль
 
IIIa66uMEM6eP
заставил Бендера
437 / 293 / 10
Регистрация: 05.12.2010
Сообщений: 1,655
Записей в блоге: 6
#1

Маленькая программка - вопрос по двоичным числам. - C++

02.01.2011, 20:30. Просмотров 468. Ответов 7
Метки нет (Все метки)

Наткнулся на это. Подскажите как добавить в функционал программки еще и двоичные числа..
PS. хз, но точно не "bin"

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#include <cstdlib>
#include <iostream>
 
using namespace std;
 
//Переводим введенное число в другие системы счисления.
    int main ()
{
  
  int n;
  cout << "Enter number :" << endl;
  cin >> n;
  cout << hex << n << endl;
  cout << dec << n << endl;
  cout << oct << n << endl;
  
    system("PAUSE");
    return EXIT_SUCCESS;
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
02.01.2011, 20:30
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Маленькая программка - вопрос по двоичным числам. (C++):

В чем ошибка (маленькая программка)? - C++
Определить, лежит ли окружность С0 в середине окружности С1 #include &lt;stdio.h&gt; #include &lt;math.h&gt; #include &lt;conio.h&gt; #include...

маленькая маленькая консультация, не сложная работа - C++
почему эта прога не компилируется? #include&lt;iostream.h&gt; #include&lt;string.h&gt; #include&lt;math.h&gt; int main() { string z=&quot;1011&quot;; ...

Маленькая программка-тест, сбой с выводом информации в файл - C#
Доброго времени суток) программа заключалась в анкетном сборе данных и дальнейшим заполнением файла полученными ответами, получилось как то...

По трем введенным числам установить, существует ли треугольник со сторонами, равными этим числам - C#
Помогите пожалуйста решить задачи: 1. По трем введенным числам установить, существует ли треугольник со сторонами, равными этим...

Суммы в горизонтальных линиях должны равняться числам в правой колонке, а в вертикальных - числам в нижней стр - C (СИ)
Заполните пустые квадраты, используя только числа от 1 до 9. Суммы в горизонтальных линиях должны равняться числам в правой колонке, а в...

Прибавить первый элемент ко всем четным числам и последний элемент ко всем нечетным числам - PascalABC.NET
В массиве S(9) прибавить первый элемент ко всем четным числам и последний элемент ко всем нечетным числам. Первый и последний элементы не...

7
ZetX
49 / 49 / 5
Регистрация: 23.02.2010
Сообщений: 437
02.01.2011, 20:35 #2
есть функция itoa
0
IIIa66uMEM6eP
заставил Бендера
437 / 293 / 10
Регистрация: 05.12.2010
Сообщений: 1,655
Записей в блоге: 6
02.01.2011, 20:56  [ТС] #3
Цитата Сообщение от ZetX Посмотреть сообщение
есть функция itoa
мне кажется или вы действительно усложняете?)) простите если я не прав - но кажется можно проще и компактнее, только я не как не уловлю эту самую истину.

Добавлено через 17 минут
Нашел выход... правда немного сумбурно) но работает:
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
42
43
#include <cstdlib>
#include <iostream>
#include <math.h>
 
using namespace std;
 
 
    int main ()
{
  
  int n;
  int decimal, bits, bit_fac;
  cout << "VVegu 4uclo :" << endl;
  cin >> n;
  cout << hex << n << endl;
  cout << dec << n << endl;
  cout << oct << n << endl;
  
  char binary[255];
    cout << "End now, enter number for bin: ";
    cin >> decimal;
    bits = int(log(decimal)/log(2));
    for(int i = 0; i < bits+1; ++i)
 
 
        {
        bit_fac=int(pow(2,bits-i));
        binary[i]=(decimal / bit_fac > 0? '1' : '0');
        decimal=(decimal / bit_fac > 0? decimal - bit_fac : decimal);
        }
        cout <<"Binary equivalent: ";
        for(int j=0; j<bits+1; ++j)
 
 
            {
            cout<<binary[j];
            }
            cout<<endl;
            cout << "(c) IIIa66uMEM6eP"
  
    system("PAUSE");
    return EXIT_SUCCESS;
}
0
silent_1991
Эксперт С++
4997 / 3055 / 149
Регистрация: 11.11.2009
Сообщений: 7,040
Завершенные тесты: 1
02.01.2011, 21:02 #4
IIIa66uMEM6eP, что может быть проще вызова библиотечной функции?
По-вашему, ваш вариант компактнее?
1
IIIa66uMEM6eP
заставил Бендера
437 / 293 / 10
Регистрация: 05.12.2010
Сообщений: 1,655
Записей в блоге: 6
02.01.2011, 21:07  [ТС] #5
Цитата Сообщение от silent_1991 Посмотреть сообщение
ваш вариант компактнее?
в моем случае главное - работает. это не для преподавателя на показ ( у нас с++ не преподают)
0
silent_1991
Эксперт С++
4997 / 3055 / 149
Регистрация: 11.11.2009
Сообщений: 7,040
Завершенные тесты: 1
02.01.2011, 21:17 #6
Хм... Такой вариант умножения

C++
1
2
3
4
5
// a * b
product = b == 0 ? 0 : a;
 
for (int i = 1; i < b; ++i)
    product += a;
тоже работает, но не лучше ли product = a * b;?
0
alex_x_x
бжни
2452 / 1657 / 84
Регистрация: 14.05.2009
Сообщений: 7,162
02.01.2011, 21:46 #7
C++
1
2
3
4
int main(){
  char buff[10];
  cout << itoa( 100, buff, 2 ) << endl;
}
ессно помним, что itoa нет в стандарте
0
IIIa66uMEM6eP
заставил Бендера
437 / 293 / 10
Регистрация: 05.12.2010
Сообщений: 1,655
Записей в блоге: 6
03.01.2011, 13:50  [ТС] #8
окончательная версия в моем исполнении)
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
42
43
44
45
#include <cstdlib>
#include <iostream>
#include <math.h>
 
using namespace std;
 
 
    int main ()
{
  
  int n;
  int decimal, bits, bit_fac;
  cout << "Enter number :" << endl;
  cin >> n;
  cout << "Hex - 16 : " ;
  cout << hex << n << endl;
  cout << "Dec - 10 : " ;
  cout << dec << n << endl;
  cout << "Oct - 8 : " ;
  cout << oct << n << endl;
  
  char binary[255];
    cout << "End now, number for bin: ";
    bits = int(log(n)/log(2));
    for(int i = 0; i < bits+1; ++i)
 
 
        {
        bit_fac=int(pow(2,bits-i));
        binary[i]=(n / bit_fac > 0? '1' : '0');
        n=(n / bit_fac > 0? n - bit_fac : n);
        }
        
        for(int j=0; j<bits+1; ++j)
 
 
            {
            cout<<binary[j];
            }
            cout<<endl;
            cout << "(c) IIIa66uMEM6eP" << endl;
  
    system("PAUSE");
    return EXIT_SUCCESS;
}
0
03.01.2011, 13:50
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
03.01.2011, 13:50
Привет! Вот еще темы с ответами:

Проблема с двоичным деревом - C#
Доброй ночи. Я писал програму словаря построен как двоичное дерево. Каждая компонента связности (узел дерерва) содержит слово и счетчик...

Сортировка двоичным включением - C++
У меня задание продемонстрировать в виде таблицы алгоритм роботы сортировки с двоичным включением на массиве 15,4,10,8,6,9,16,1.Написал...

MS Access Сортировка двоичным деревом - Delphi БД
Может ли кто-то скинуть пример древесной сортировки для БД Access на Delphi7.

работа с двоичным кодом - C++
Задача не сложная но материала на ту тему Я на просторах интернета так и не нашел( Через небольшую программку (самопальный HEX ридер) Я...


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

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

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