|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
05.05.2011, 21:47 | #1 |
C++
Форумчанин
Регистрация: 27.03.2011
Сообщений: 803
|
Числа с плавающей запятой
Имеется значение, записанное в переменную типа с плавающей запятой (float, double), как наилучшим образом разложить его на числитель и знаменатель?
То есть, допустим, число = 7,23. Нужно получить 723 (числитель) и 100 (знаменатель). Можно, конечно, пойти напролом, и умножать число на 10 до тех пор, пока его дробная часть не станет равной нулю, но это как-то затратно в плане тактов процессора. Должен быть другой, более изящный путь. Ищете информацию по C++?
cplusplus.com |
05.05.2011, 22:54 | #2 |
Пользователь
Регистрация: 09.04.2011
Сообщений: 30
|
Преобразуй число в строку, ну и соответственно обработай - а потом, новые строки - в числитель и знаменатель.
|
05.05.2011, 23:52 | #3 |
C++
Форумчанин
Регистрация: 27.03.2011
Сообщений: 803
|
Преобразовывать в строки - тоже не вариант. В первую очередь меня интересует производительность.
Ищете информацию по C++?
cplusplus.com |
06.05.2011, 08:10 | #4 |
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
Разве что :http://ru.wikipedia.org/wiki/Double
Попробовать тупо разложить вещественное на его составляющие... (Сразу предупреждаю - ИМХО)
I'm learning to live...
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Задача по информатике с плавающей запятой | ruslove | Помощь студентам | 0 | 19.04.2011 23:46 |
число с плавающей запятой. | kotopezzz | Помощь студентам | 1 | 25.02.2011 13:11 |
Числа с плавающей запятой | Impuls1989 | Помощь студентам | 0 | 03.02.2011 21:03 |
Числа в формате с плавающей запятой (Pascal) | Yamkin | Помощь студентам | 0 | 12.12.2010 22:19 |
у меня ошибка с плавающей запятой... | Bublik | Помощь студентам | 3 | 10.01.2009 23:20 |