![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Новичок
Джуниор
Регистрация: 28.12.2010
Сообщений: 1
|
![]()
подскажите, пожалуйста, как получить дробную часть числа без погрешностей
например из 12.35 -> 0.35, а не 0.34999999 |
![]() |
![]() |
![]() |
#2 |
Старожил
Регистрация: 21.03.2009
Сообщений: 2,193
|
![]()
Никак. Числа с плавающей точкой (как, естественно, и другие) хранятся на компьютере в двоичной, а не десятичной форме, поэтому многие дробные числа в принципе не могут храниться во встроенных типах C/C++ с абсолютной точностью.
Простые и красивые программы - коды программ + учебник C++
Создание игры - взгляд изнутри - сайт проекта Тема на форуме, посвященная ему же |
![]() |
![]() |
![]() |
#3 |
Форумчанин
Регистрация: 22.12.2010
Сообщений: 109
|
![]()
А если сделать хитрый цикл, который будет отсекать за круг одну цифру и прибавлять нужное число, так что бы как бы округлить число и так до сотых. Или что то подобное. Ведь округление именно так и происходит в принципе то
![]() ![]()
Я бы изменил мир, но бог не дает исходников (c)
И сказал мыслитель, напиши свою проблему на бумаге и ты увидишь свои ошибки. ![]() |
![]() |
![]() |
![]() |
#4 |
Форумчанин
Регистрация: 21.12.2010
Сообщений: 199
|
![]()
Первое что приходит в голову - результат округлять до нужного кол-ва разрядов (до 2х)
А второе что приходит несколько веселее - переводишь число с точкой в строку а из строки выделяешь часть после точки и преобразуешь в инт ![]() |
![]() |
![]() |
![]() |
#5 | |
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
![]() Цитата:
I'm learning to live...
|
|
![]() |
![]() |
![]() |
#6 |
С++
Форумчанин
Регистрация: 22.09.2008
Сообщений: 791
|
![]()
можно поиздеваться и представить число в виде рациональной дроби со знаменателем равным степени 10
тогда можно будет получить точнее некуда)
Форматируйте код, будьте людьми.
|
![]() |
![]() |
![]() |
Опции темы | Поиск в этой теме |
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
как сложить два числа с плавающей точкой | forsy | Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM | 19 | 29.03.2010 02:15 |
помогите с плавающей точкой | Egory4 | Помощь студентам | 5 | 01.11.2009 14:48 |
Преобразование числа с плавающей точкой в строку | Sibedir | Общие вопросы Delphi | 14 | 09.03.2008 21:48 |
Числа с плавающей точкой | Blondinka | Общие вопросы Delphi | 8 | 21.09.2007 11:32 |