Zitat von
faux:
Zitat von
Bart82:
Es ist besser du machst eine Abfrage auf das Argument, dass das nicht die unerlaubten Werte annimmt. Da die cosinus-Funktion eine Gleitkommazahl zurück gibt wird die fast nie exakt 0 sein, sondern u.U. 0.00...1!
Das ist eine gute Idee...
Das hatte ich dir auch schon geschrieben...
Zitat von
faux:
Wann ergibt der Cosinus eines Wertes null?
Bei Vielfachen von (Pi/2). (Meinem obigen Posting auch zu entnehmen, wenn auch nicht in aller Deutlichkeit.)
Aber das hilft dir nicht weiter, da man bei Float-Werten
NIE sicher sein kann einen Wert
ganz genau zu treffen. (Zur Erklärung hab ich hier schon mal was längeres gepostet - müsstest mal suchen.)
Also:
Delphi-Quellcode:
if (cos(irgendwas) < -0.00000001) or (cos(irgendwas) > 0.00000001) then
begin
....
end;
Unter
Win32-Delphi gibt's die Funktion Math.isZero(zahl), die die nötige Spanne aus dem Datentyp ermittelt, und testet.
\\edit: Und Binärbaum hat unter mir die effizientere Variante gepostet
Fabian K.
INSERT INTO HandVonFreundin SELECT * FROM Himmel