Zitat von
ibp:
Zitat von
Spurius:
Hallo,
round(strtofloat(m.Text)* i + StrToFloat(t.Text));
Wenn ich z.B. für m = 0,5 einsetzte und füt t = -1, kommt als y Wert 0 heraus.
Die x - und Y-Werte entnehme ich aus Edits. Wenn ich dort 0.5 eingebe, kommt die Meldung:
round(0.5)=1
wie groß ist i ? =1 ?
dann: round(0.5)*1+(-1)=1-1=0 ist doch richtig gerechnet!
Vorsicht, das round ist überm ganzen Ausdruck:
round(0.5 * 1 + -1) = round(-0.5) = 0 -> da Delphi bei +/-n,5 zu n rundet, und wohl nicht zu n+1. Das wird an der immer wieder einfließenden Ungenauigkeit von Fießkommazahlen liegen (0,5000000000000000001 wird grad noch zu 1 gerundet, 0,5 nicht mehr).
gruss,
Fabian
Fabian K.
INSERT INTO HandVonFreundin SELECT * FROM Himmel