Delphi-PRAXiS
Seite 2 von 3     12 3      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi probleme mit double (https://www.delphipraxis.net/73892-probleme-mit-double.html)

fkerber 26. Jul 2006 08:56

Re: probleme mit double
 
Hi!

Im Sinne derer, die später ein ähnliches Problem haben, wäre es prima, wenn du uns sagst, wie du es lösen konntest!


Ciao Frederic

MaBuSE 26. Jul 2006 09:22

Re: probleme mit double
 
Zitat:

Zitat von Robert Marquardt
Beginnen wir mal mit der Mathematik.

Da ich keinen Doppelpost machen möchte siehe:
http://www.delphipraxis.net/internal...=584586#584586
(Das PDF lesen)

xZise 26. Jul 2006 11:20

Re: probleme mit double
 
Zitat:

Zitat von fkerber
Du solltest deine If-Bedingung nochmal überdenken:
Man sollte nicht auf "= false"! Dazu findest du auch einige Threads hier

Ob man
Delphi-Quellcode:
if not MyBool then
  ...
oder ob man
Delphi-Quellcode:
if MyBool = false then
  ...
macht ist egal und führt zum gleichen Ergebnis:
Quelle
Ist zwar eine umständliche Boolsche Auswertung aber immer noch eine korrekte und PASCAL konforme Auswertung die immer richtig umgesetzt wird. Es ist egal ob man dabei den Typen Booelan, WordBool, Bool, ByteBool oder LongBool benutzt.


[edit] :mrgreen: Sollte natürlich nicht heißen: "Macht ist egal und führt zum gleichen Ergebnis"[/edit]

fkerber 26. Jul 2006 11:28

Re: probleme mit double
 
Hi

:oops: , ok an dieser Stelle stimmt es tatsächlich. Ich hatte im Hinterkopf, dass man es für True und False nicht machen sollte, bei False geht es allerdings doch.

Sinnvollerweise sollte man sich aber die andere Methode angewöhnen, dann macht man es bei True auch nicht falsch!


Ciao, Frederic

3_of_8 26. Jul 2006 11:32

Re: probleme mit double
 
Wenn man für sich schreibt, kann man sowieso machen, was man will.

Aber wenn man später mal im Team arbeitet und Code auch von anderen gelesen und verstanden werden muss, dann ist so ein =false kein guter Stil.

Das nur als Anmerkung.

himitsu 26. Jul 2006 11:36

Re: probleme mit double
 
Und ich habe eh andere Erfahrungen gemacht, was die auswertung mit =true und =false angeht.

Hatte mal das Problem, das der Vergleich mit =True eben nicht zum selben Ergebnis führte (beim =False ist das aber tatsächlich vollkommen egal, ob man's mit, oder ohne diesem schreibt)

fkerber 26. Jul 2006 11:51

Re: probleme mit double
 
Hi!

Der Vergleich mit True kann auch zu fehlerhaften Ergebnissen führen, das steht fest:
Damit wir jetzt hier nicht vom Thema abkommen, verweise ich auf:

http://www.delphipraxis.net/internal...ct.php?t=68256


Ciao, Frederic

MaBuSE 26. Jul 2006 11:53

Re: probleme mit double
 
Zitat:

Zitat von xZise
Macht ist egal und führt zum gleichen Ergebnis

:mrgreen:
Delphi-Quellcode:
if not (BoolVar = True) then
begin
  Result := False;
end
else
begin
  Result := True;
end;
[edit]Sorry, habe mich hinreissen lassen[/edit]

xZise 26. Jul 2006 13:41

Re: probleme mit double
 
Zitat:

Zitat von MaBuSE
Zitat:

Zitat von xZise
Macht ist egal und führt zum gleichen Ergebnis

:mrgreen:

^^ Wtf ... vielleicht sollte ich das M klein schreiben xP

himitsu 26. Jul 2006 14:01

Re: probleme mit double
 
:lol:

Zitat:

Zitat von MaBuSE
Delphi-Quellcode:
if not (BoolVar = True) then
begin
  Result := False;
end
else
begin
  Result := True;
end;

wie ich schon sagt, wäre s wohlbesser s andwersrum zu definieren.

Delphi-Quellcode:
if BoolVar = False then
begin
  Result := False;
end
else
begin
  Result := True;
end;
oder
Delphi-Quellcode:
Result := not (BoolVar = False);

Result := BoolVar <> False;


Alle Zeitangaben in WEZ +1. Es ist jetzt 01:07 Uhr.
Seite 2 von 3     12 3      

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