Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi Math.InRange und ungültige Werte (https://www.delphipraxis.net/215236-math-inrange-und-ungueltige-werte.html)

TomyN 31. Mai 2024 13:36

Delphi-Version: 10.3 Rio

Math.InRange und ungültige Werte
 
Hallo

Kann mir jemand kurz sagen, ob InRange aus der Unit Math bei Infinity oder NaN verlässlich false liefert oder stürzt es da ab?

himitsu 31. Mai 2024 21:40

AW: Math.InRange und ungültige Werte
 
Einfach mal ausprobieren?

Delphi-Quellcode:
uses Math;

procedure TForm1.FormCreate(Sender: TObject);
begin
  Assert(not InRange(0, 1, 2));
  Assert(InRange(1, 0, 2));

  Assert(not InRange(NaN, 0, 2));
  Assert(not InRange(1, NaN, 2));

  Assert(not InRange(Infinity, 0, 2));
  Assert(not InRange(NegInfinity, 0, 2));

  Assert(not InRange(1, Infinity, 2));
  Assert(InRange(1, NegInfinity, 2));
end;

Auch nach
Delphi-Quellcode:
SetExceptionMask([exInvalidOp]);
knallt es nicht.

TomyN 1. Jun 2024 06:08

AW: Math.InRange und ungültige Werte
 
Danke.
Mir war nicht bewußt, dass man Nan und die Infinities wie Zahlen verwenden kann.


Alle Zeitangaben in WEZ +1. Es ist jetzt 16:59 Uhr.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz