![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
вычисления с плавующей точкой [D7, Win2k, WinXP]
LORN © (2005-08-30 14:16:00)в проге есть вычисления , результат получается дробный
какой функцией (или другим способом) можно получить число с определеным колиством чисел после запятой (есть 1,99999 надо 1,99). надо имено чтоб число обрезалось на нужное количество знаков, а не округлялось
на этом форуме дали ответ
RoundTo(Int(X*100)/100,-2)
функция работает
но прога вещается намертво(невсегда , но бывает частенько)
как избавится от этого? или другой вариант
плиз хелп
заранее спасибо
LORN (2005-08-30 15:17:00) [1]так оно и есть
что то погаречился не туда полез
тема закрыта
Юрий Зотов (2005-08-30 15:14:00) [2]> LORN (30.08.05 14:16)
> прога вещается намертво(невсегда , но бывает частенько)
Вряд ли она вешается от RoundTo, Int, умножения и деления.
> как избавится от этого?
Найти отладчиком действительную причину зависания и устранить ее. Если этот завис связан именно с округлением, то вполне возможно, что он возникает от самого округления до двух цифр после запятой, а не от способа округления.
LORN (2005-08-30 15:02:00) [3]для -=S.S=-
вот именно сто округляет а мне надо обрезать знаки после запятой
LORN (2005-08-30 14:48:00) [4]для Германна
FloatToStrF- помимо всего прочего делает округление 1.9999 будет двойкой при 2 знаках послезапятой
-=S.S=- (2005-08-30 14:41:00) [5]Причём реззультат округляеться до заданой точности
-=S.S=- (2005-08-30 14:40:00) [6]Format('%8.4f',[1.5999999999])
где 8 - количество цифр до запятой а 4 - после запятой
Александр Иванов (2005-08-30 14:38:00) [7]почему вешается прога ищи в другом месте
Германн (2005-08-30 14:21:00) [8]FormatFloat
FloatToStrF