Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2002.06.03;
Скачать: CL | DM;

Вниз

0,5=0,5 округление   Найти похожие ветки 

 
AlexA ©   (2002-05-22 16:18) [0]

Такая информация в отладчике

TmpN: 14710.5
Frac(TmpN): 0.5
Frac(TmpN)>=0.5: False
Frac(TmpN)=0.5: False

В результате условие IF выполняется неверно.
Где ошибка
Что делать


 
Внук ©   (2002-05-22 16:22) [1]

Было у меня такое, когда еще на C++ писал. Попробуйте FloatToStr(Frac(TmpN))="0.5"


 
McSimm ©   (2002-05-22 16:26) [2]

Сравнение на равенство чисел с плавающей точкой это ошибка программирования.

Обычно сравнивают в пределах погрешности, но можно привести к сравнению целых. Например так:

if Trunc(10*Frac(TmpN)) = 5 then



Страницы: 1 вся ветка

Текущий архив: 2002.06.03;
Скачать: CL | DM;

Наверх




Память: 0.46 MB
Время: 0.01 c
8-7120
-GAS-
2002-01-14 23:54
2002.06.03
Ошибка при уничтожении обьекта DirectDraw


1-7000
NorthMan
2002-05-23 12:01
2002.06.03
Можно ли с помощью директивы компилятора определить,


14-7168
Malder
2002-04-23 23:35
2002.06.03
Бойцовский клуб =)


8-7127
Phobos
2002-01-11 20:50
2002.06.03
Где можно достать исходники графического редактора?


1-7092
ded_di
2002-05-16 13:34
2002.06.03
Окошко excel в delphi программе