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

Программа перевода числа из 10 СС в 2 СС - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ иерархия классов http://www.cyberforum.ru/cpp-beginners/thread95822.html
помогите с классами, базовый класс-ювелирное украшение производный телевизор и стиральная машина в классе не должно быть виртуальных функций
C++ Пошаговая компиляция в Borland 5.01 Всем привет. С недавнего времени при пошаговой компиляции программки(F7) начало выскакивать окно CPU и пошаговость происходит не в окне программы, а в этом долбанном CPU. До самой программы дойти... http://www.cyberforum.ru/cpp-beginners/thread95816.html
C++ Найти с заданной точностью знач. выражения
Составить функцию возвращающую значение для решения представленной ниже задачи: Найти с заданной точностью значения выражения s=сумма ряда(x^n/n!); n от 1 до бесконечн.; Точность<=10^-4;...
вывод текста, определение количество слов в тексте, у которых первый и последний символы совпадают. C++
Здравствуйте. Прошу пожалуйста мне помочь с написанием этой программы. Всем за ранее огромное спасибо! Вы спасёте мне жизнь. =) Условие: Ввод данных осуществляется из файла с расширением .DAT....
C++ Как изменить кодировку вывода? http://www.cyberforum.ru/cpp-beginners/thread95729.html
Доброе утро всем. Помогите новичку. Только начал изучать программирование на С++ (в среде Visual Studio 2008 express), и столкнулся с первой проблемой, обьяснения которой ни в каких книжках пока не...
C++ Как делать log.txt? Реализацию объяснять не надо - сам справлюсь. А что выводу в лог подлежит и где именно этот вывод лучше сделать? подробнее

Показать сообщение отдельно
Nameless One
Эксперт С++
5773 / 3424 / 255
Регистрация: 08.02.2010
Сообщений: 7,447
15.02.2010, 17:37
fs444, извини, было лень разбираться в чужом коде, тем более, если ты утверждаешь, что он корявый. Вот моя программка, работает для целых неотрицательных десятичных чисел, проверял на калькуляторе. Алгоритм решения - способ, который проходят на уроке информатики (деление на 2). Вот сам код:
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
#include <iostream>
using namespace std;
 
int pow(int x, int y)
{
    int n=1;
    while(y--)
        n*=x;
    return n;
}
 
int main()
{
    setlocale(LC_ALL, "Russian");
 
    int dec;//Число в десятичной СС
    int bin=0;//Искомое число в двоичной CC
    int i=0;//Разряд двоичного числа
    cout << "Введите число" << endl;
    cin >> dec;
    while(dec>1)
    {
        bin+=(dec%2)*pow(10, i);//Присваиваем i-тому разряду остаток от деления
        dec/=2;
        i++;
    }
    bin+=dec*pow(10, i);
    cout << "Число в двоичной СС:" << endl << bin << endl;
    system("pause");
    return 0;
}
ИМХО, попроще, чем у тебя.

Добавлено через 8 минут
Для вывода чисел в десятичной, восьмеричной и шестнадцатеричной СС используются, соответственно, манипуляторы потока вывода dec, oct, hex. Данная программа выведет введенное число сначала в шестнадцатеричной, потом в восьмеричной СС:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
#include <iostream>
using namespace std;
 
int main()
{
    setlocale(LC_ALL, "Russian");
 
    int decs;//Число в десятичной СС
 
    cin >> decs;
    
    cout << hex << decs << endl << oct << decs << endl;
    system("pause");
    return 0;
}
0
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru