Thema: Delphi trunc(2)=1?

Einzelnen Beitrag anzeigen

num_ber_3

Registriert seit: 9. Nov 2003
3 Beiträge
 
#1

trunc(2)=1?

  Alt 11. Nov 2003, 15:28
tach allerseits,
jeder von euch kennt die funktione trunc, nehme ich mal an. sie schneidet einem flieskommawert die nachkommastellen ab und gibt einen integerwert zurück (die zahlen vor dem komma).
ich habe beim programmieren festgestellt, dass dies nicht immer so korrekt geschieht.
Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
var h,z,anfang:double;
begin
 z:=9*(1/24);
 anfang:=7*(1/24);
 h:=(z-anfang) / (1/24);
 showmessage('fliesskomma: ' + floattostr(h) + chr(13) + 'trunc: ' + inttostr(trunc(h)));
end;
die message sieht bei mir so aus:
"fliesskomma: 2
trunc:1
"
seit wann ist trunc(2) = 1?

achja, wenn ich die rechnung mit numerischen näherungswerten (0.375 für z und 0.291666666 für anfang) durchführe gehts.

mfg
  Mit Zitat antworten Zitat