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

Вниз

Значения с плавающей точкой   Найти похожие ветки 

 
ttt   (2013-03-22 14:28) [0]

Добрый день.

Лучше покажу примером.
s: single;
s:= 0.8;
if s <> 0.8 then ShowMessage(FloatToStr(s));

На деле выдает "0.800000011920929". Вопрос, скорее, не в том, чтобы убрать эти "11920929", а в том, как правильно сравнивать значения.
Подскажите, расскажите. :)


 
Ega23 ©   (2013-03-22 14:36) [1]

uses Math;

SameValue + F1


 
Inovet ©   (2013-03-22 14:38) [2]

Нельзя плавающие типы сравнивать на точное равенство, надо
abs(a-b) < epsilon


 
Ega23 ©   (2013-03-22 14:39) [3]

А вообще

|A-B| <= Epsilon

Epsilon - больше нуля, значение - выбирай исходя из задачи


 
O'ShinW ©   (2013-03-22 15:26) [4]

http://www.delphikingdom.com/asp/viewitem.asp?catalogid=374



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

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

Наверх




Память: 0.47 MB
Время: 0.007 c
15-1375123950
Rouse_
2013-07-29 22:52
2014.01.19
Отдам в хорошие руки


15-1375037011
TUser
2013-07-28 22:43
2014.01.19
Внедорожник под управлением Windows


15-1375543089
Anatoly Podgoretsky
2013-08-03 19:18
2014.01.19
Test


15-1375019811
KilkennyCat
2013-07-28 17:56
2014.01.19
не могу не поделиться.


15-1375043600
Petr
2013-07-29 00:33
2014.01.19
DB/2. ацтой или рай?