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

Вниз

Вещественные числа   Найти похожие ветки 

 
Vladimir88   (2005-10-05 16:04) [0]

Как правильно сравнивать вещественные числа


 
MBo ©   (2005-10-05 16:10) [1]

CompareValue из Math


 
Jeer ©   (2005-10-05 17:02) [2]

например:

EPS: Double = 1E-6;  { error for compare float numbers}

function IsFloatEqu_(f1, f2: Extended): boolean;
begin
 Result := (abs(f1-f2) < EPS);
end;


 
Digitman ©   (2005-10-05 17:06) [3]


> Как правильно сравнивать вещественные числа


на какой предмет ?

если искл-но на предмет равенства. то

PSomeRealTypeValue(@Value1)^ = PSomeRealTypeValue(@Value2)^


 
TUser ©   (2005-10-05 17:34) [4]

> Digitman ©   (05.10.05 17:06) [3]

Не очень понятно, что имеется в виду.

> если искл-но на предмет равенства

Если равенство понимать по-человечески (равны с точностью до ошибки вычислений с плав. точкой), то не сработает
var s1, s2: single;
begin
 s1:=0;
 s2:=s1 + 1e-16;
 if PSingle(@s1)^ = PSingle(@s2)^ then
   writeln ("equal")
   else writeln ("not equal");
end.


 
злобная танька   (2005-10-05 18:36) [5]

гм.. можно вопрос?
А зачем Такие(@Штуки)^? что они делают?
чем плох вариант [2]?


 
begin...end ©   (2005-10-05 18:40) [6]

> злобная танька   (05.10.05 18:36) [5]

В [3] приведён пример ТОЧНОГО сравнения двух вещественных чисел одинакового формата -- сравнения их внутренних представлений (содержимого переменных в памяти).



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

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

Наверх




Память: 0.48 MB
Время: 0.036 c
14-1128690438
fran
2005-10-07 17:07
2005.10.30
off top: Есть ли дефрагментатор диска NTFS с кластером 8к?


1-1128680803
Loginov Dmitry
2005-10-07 14:26
2005.10.30
Вот решил создать систему визуализации расчетов


14-1128951238
msguns
2005-10-10 17:33
2005.10.30
Книги Донцовой.


2-1128413445
Pazitron_Brain
2005-10-04 12:10
2005.10.30
ИИ


14-1128589213
Loginov Dmitry
2005-10-06 13:00
2005.10.30
Имеющиеся в интернете ресурсы по Delphi