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

Конвертация чисел с плавающей запятой в HEX - C++

Восстановить пароль Регистрация
 
alex-net
3 / 3 / 1
Регистрация: 27.11.2012
Сообщений: 171
19.01.2013, 20:14     Конвертация чисел с плавающей запятой в HEX #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
33
34
35
36
37
38
#include <iostream>
#include <cctype>
 
using namespace std;
 
bool hexToDec( char *s, int &result )
{
    char c;
    int i = 0;
 
    result = 0;
    while ( s[ i ] != '\0' )
    {
        c = tolower( s[ i++ ] );
        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;
    }
    return true;
}
 
int main()
{
    const int N = 10;
    char s[ N + 1 ];
    int n;
 
    cin.get( s, N );
    if ( hexToDec( s, n ) )
        cout << "result: " << n << endl;
    else
        cout << "bad number!" << endl;
 
    return 0;
}
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Kuzia domovenok
 Аватар для Kuzia domovenok
1882 / 1737 / 116
Регистрация: 25.03.2012
Сообщений: 5,907
Записей в блоге: 1
19.01.2013, 20:25     Конвертация чисел с плавающей запятой в HEX #2
а как ты себе представляешь шестнадцатеричные дроби?
С Шестнадцатеричной плавающей точкой?
zss
Модератор
Эксперт С++
 Аватар для zss
5946 / 5551 / 1784
Регистрация: 18.12.2011
Сообщений: 14,178
Завершенные тесты: 1
19.01.2013, 20:26     Конвертация чисел с плавающей запятой в HEX #3
А что такое дроби? n/m , где n,m - целые?
alex-net
3 / 3 / 1
Регистрация: 27.11.2012
Сообщений: 171
19.01.2013, 20:33  [ТС]     Конвертация чисел с плавающей запятой в HEX #4
2,3 например
Kuzia domovenok
 Аватар для Kuzia domovenok
1882 / 1737 / 116
Регистрация: 25.03.2012
Сообщений: 5,907
Записей в блоге: 1
19.01.2013, 20:34     Конвертация чисел с плавающей запятой в HEX #5
и что это значит 2,3 ????
Это вообще сколько?
alex-net
3 / 3 / 1
Регистрация: 27.11.2012
Сообщений: 171
19.01.2013, 20:41  [ТС]     Конвертация чисел с плавающей запятой в HEX #6
Ну ребят, ну через точку дроби. Вроде как раз и плавающая точка и зывается вроде
Kuzia domovenok
 Аватар для Kuzia domovenok
1882 / 1737 / 116
Регистрация: 25.03.2012
Сообщений: 5,907
Записей в блоге: 1
19.01.2013, 20:42     Конвертация чисел с плавающей запятой в HEX #7
ну так ты ответь нам 2.3 это сколько по твоему???
C++
1
2
3
4
5
6
7
8
9
10
11
#include <iostream>
bool hexToDec( char *s, float &result ){
    ///тут мы напишем тебе функцию
    ///
}
int main(){
    float result;
    hexToDec("2.3", result);
    std::cout<<result;
    return 0;
}
Что по-твоему должен вывести?
OhMyGodSoLong
~ Эврика! ~
 Аватар для OhMyGodSoLong
1234 / 983 / 42
Регистрация: 24.07.2012
Сообщений: 2,002
19.01.2013, 21:00     Конвертация чисел с плавающей запятой в HEX #8
Кузя, я не понимаю, в чём проблема с дробями. 2,316 = 2⋅160 + 3⋅16–1 = 2,187510.
Kuzia domovenok
 Аватар для Kuzia domovenok
1882 / 1737 / 116
Регистрация: 25.03.2012
Сообщений: 5,907
Записей в блоге: 1
19.01.2013, 21:09     Конвертация чисел с плавающей запятой в HEX #9
Цитата Сообщение от ~OhMyGodSoLong~ Посмотреть сообщение
Кузя, я не понимаю, в чём проблема с дробями. 2,316 = 2⋅160 + 3⋅16–1 = 2,187510.
Я пытаюсь понять, что автор это осознаёт и ему именно это и нужно.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
19.01.2013, 21:15     Конвертация чисел с плавающей запятой в HEX
Еще ссылки по теме:

конвертация hex to base64 C++
запись типов с плавающей запятой C++
Конвертация ' string hex ' to char C++

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

Или воспользуйтесь поиском по форуму:
alex-net
3 / 3 / 1
Регистрация: 27.11.2012
Сообщений: 171
19.01.2013, 21:15  [ТС]     Конвертация чисел с плавающей запятой в HEX #10
Я вас чет не пойму, программа не переводит дроби
Yandex
Объявления
19.01.2013, 21:15     Конвертация чисел с плавающей запятой в HEX
Ответ Создать тему
Опции темы

Текущее время: 12:00. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru