Hi!
"Wenn du nichts dagegen hast schick ich die mal die Rechnung."
Doch, da hab' ich was gegen. Versteh' mich nicht falsch, es gibt durchaus Leute für die ich die Rechnung bezahle, aber nicht einfach so... ;-)
Stell die Berechnung bzw. den Quelltext einfach als Antwort ein. Das kann dann ich sehen und alle anderen auch - da werden wir dann schon eine Lösung finden.
Es wird warscheinlich an den Integer-VARs leigen. Falls Delphi sich dort wie Turbo-Pascal verhält, werden die Berechnungen dann mit Integern durchgeführt, wenn nur Integer vorhanden sind. Der Typcast nach Extended erfolgt dann erst bei der Zuweisung.
Wenn nun im Compiler kein Überlaufcheck aktiviert ist, dann entstehen beim Intergerüberlauf in der Tat negative Werte.
Evtl. Hilft es schon, wenn du eine der in der Berechnung beteiligten Variablen als Extended deklarierst (oder eine Extended-Hilfsvariable nutzt, in die vor der Berechnung mit dem Wert einer Integer-Variablen gefüllt wird).
Bis denn
Andreas