|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
|
Опции темы | Поиск в этой теме | Опции просмотра |
|
#1
|
|||
|
|||
Округление чисел с плавающей запятой
Здравствуйте товарищи программисты. Есть вопрос по функции FloatToStrF. Для моей задачи нужно записывать в текстовый файл числа с точностью до 6 знака после запятой, но не в коем случае не округлять их, то есть просто отрезать часть цифр в строке. При использовании функции FloatToStrF число вида -0.0005425 с применением FloatToStrF(x,ffFixed,1,6) округляется до -0.000540 что для моей задачи недопустимо. Так же есть такая проблема, что если просто отрезаю часть строки, то в некоторых случаях очень маленькие числа записываются в виде: 5.55E-5 и соответственно число уже не 5.5*10^(-5), а просто 5.5 и уже не переводится обратно с помощью StrToFloat. Есть ли какой-нибудь вариант избавится от записи вида E-5 или функция помимо FloatToStrF. Еще пробовал использовать RoundTo, но в моем Delphi она не работает. Заранее спасибо за ответ.
|
#2
|
||||
|
||||
Format должен помоч. Или умножить на миллион, взять целое, поделить на миллион.
Некоторые программисты настолько ленивы, что сразу пишут рабочий код. Если вас наказали ни за что - радуйтесь: вы ни в чем не виноваты. |
#3
|
|||
|
|||
Цитата:
|
#4
|
||||
|
||||
Цитата:
Я не понял Вашего вопроса, но всё же Вам на него отвечу! |