8 / 8 / 2
Регистрация: 16.03.2011
Сообщений: 257
|
|
1 | |
На входе дробное число, которое надо преобразовать во float03.03.2012, 10:22. Показов 914. Ответов 2
Метки нет (Все метки)
Здравствуйте, столкнулся со следующей проблемой: на входе дробное число которое читается из потока посимвольно (состоит из 3 знаков 3.2 5.8 1.2 3.6 и тд) надо преобразовать во float. Например 3.6, 0.6 я получаю делением шестерки на 10, но получаю в итоге 3.599999. Как сего избежать?
0
|
03.03.2012, 10:22 | |
Ответы с готовыми решениями:
2
Преобразовать введенное с клавиатуры дробное число в формат расстояния в км и м Указать то дробное число. которое в двоичном представлении имеет наибольшее число единиц среди чисел Найти натуральное число, которое во входе встречается нечетное число раз и вывести на экран Преобразовать введенное с клавиатуры дробное число в денежный формат |
5828 / 3479 / 358
Регистрация: 08.02.2010
Сообщений: 7,448
|
|
03.03.2012, 18:18 | 2 |
fenix117, частично, но не полностью, можно решить проблему с помощью типа с большей точностью (double), но в общем случае из-за особенностей представления типов с плавающей точкой в С/С++ проблема не решаема. Почему так происходит, можно почитать тут в разделе 5.
1
|
Модератор
8908 / 6677 / 918
Регистрация: 14.02.2011
Сообщений: 23,514
|
|
03.03.2012, 18:26 | 3 |
а никак
прочитай про плавающие числа дробные числа это степень 2(точнее деление на степень 2) 0.6 никак туда не попадает посему приближение даже в дубле ты получишь 0.599999999.... Добавлено через 2 минуты если нужно именно 0.6 то вводи свой класс (структуру) один инт целое число второй десятые так работает большинство бухгалтерских программ
1
|
03.03.2012, 18:26 | |
03.03.2012, 18:26 | |
Помогаю со студенческими работами здесь
3
Преобразовать введённое с клавиатуры дробное число в денежный формат. Преобразовать введенное с клавиатуры дробное число в денежный формат Преобразовать введенное с клавиатуры дробное число в денежный формат Преобразовать дробное число в денежный формат (рубли и копейки) используя int и frac. Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |