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

Перевод из системы по основанию 16 в систему по основанию 10 - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Вызов функции http://www.cyberforum.ru/cpp-beginners/thread762348.html
Укажите правильный вариант вызова функции вместо пропуска …….. void func(int *p, int n, float k) { } main( ) { int A={2,1,4}, m=3; ……………………….. }
C++ Есть ли какие то статьи про графику в DOS? Есть приложения которые в консолях используют "какую то магию" например FAR там вполне себе графическая оболочка. Мне не совсем ясно как в консоли изменять элемент не перерисовывая весь экран через cls .. Например поле для крестиков ноликов: Как заполнять ячейки не очищая экран? Ну или нарисовать падающий ящик ... http://www.cyberforum.ru/cpp-beginners/thread762344.html
C++ std::vector и деструкторы
Создаю динамический массив vector, состоящий из объектов, в которых есть конструкторы и деструкторы. как-то так: { vector<Element> vec; for(int i=0; i<10; i++) { ... t0 = func(...); vec.push_back(t0); }
C++ наследование
Помогите разобраться в программе. Почему возникают такие ошибки cylindr.cpp expected `,' or `...' before '&' token cylindr.cpp `c' undeclared (first use this function) В этой функции ostream &operator<<(ostream& output, const Cylindr& c) { output<<"Center = ; Radius = "<<setiosflags(ios::showpoint) <<setprecision(2)<<c.radius <<"; Busota = "<<c.height;
C++ Составить программу, определяющую, какой банк выбрать, чтобы выгодно обменять доллары на рубли http://www.cyberforum.ru/cpp-beginners/thread762307.html
Помогите написать программу пожалуйста! Программа на массивы. У вас есть доллары. Вы хотите обменять их на рубли. Есть информация о купли-продажи в банках города. В городе N банков. Составить программу, определяющую, какой банк выбрать, чтобы выгодно обменять доллары на рубли.
C++ Получение void* с итератора собственно как вытащить адресс void* Добавлено через 22 секунды контейнер вектор подробнее

Показать сообщение отдельно
ya_noob
_
201 / 145 / 9
Регистрация: 08.10.2011
Сообщений: 432
15.01.2013, 15:17     Перевод из системы по основанию 16 в систему по основанию 10
ОК

Из всей программы тут важна функция hexToDec(...), а точнее ее цикл. Его и опишу:

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
    result = 0; // обнуляем результат
    while ( s[ i ] != '\0' )
    {
        c = tolower( s[ i++ ] ); // переводим буквы в нижний регистр, чтобы избавиться от проблем с большими и маленькими буквами 
// далее формируем результат, перебирая символы 16-чного числа от старших разрядов к младшим.
// Как формируется результат щас не успею объяснить, но можешь сам погуглить про алгоритм Горнера
// приведу пример: 2345 = ( ( ( ( ( ( 0 * 10) + 2 ) * 10 ) + 3 ) * 10 ) + 4 ) * 10 + 5
// т.е. формирование числа сводится к 2 операциям: (1) сдвиг результата влево (т.е., умножение на 10)
// и (2) прибавление очередной цифры в крайнюю правую позицию
        if ( c >= '0' && c <= '9' ) // 
            result = result * 16 + ( c - '0' ); 
        else if ( c >= 'a' && c <= 'f' )
            result = result * 16 + ( c - 'a' + 10 );
        else
// ну и если встретился неверный символ, то выходим из функции
            return false;
    }
всё!
 
Текущее время: 10:38. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru