Вниз
Скачать: 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 вся ветка

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.004 c
8-1234191038
Thorax
2009-02-09 17:50
2014.01.19
Работа с цветами на Delphi


15-1375031178
Иксик
2013-07-28 21:06
2014.01.19
Илья Сегалович


2-1363937024
Вася
2013-03-22 11:23
2014.01.19
визуализация кода???


15-1375116479
Dennis I. Komarov
2013-07-29 20:47
2014.01.19
Access 2010 (accdb) and MS Jet 4.0


15-1375128275
Jeer
2013-07-30 00:04
2014.01.19
С прошедшим Днем ВМФ - мореманов!




   Наверх