Ein Thema könnte das FPU control word sein, mit dem Einfluss auf Gleitkommaberechnungen genommen werden kann.
https://docwiki.embarcadero.com/RADS...ntrol_Routines
Die Frage ist aber eher, wo das konkrete Problem liegt. Deine Prüfung mit StrToInt kann da kaum eine Rolle spielen, denn es geht ja um eine Gleitkommaoperation. Welche Zeile wirft denn den Fehler?
Ein beliebter Fehler ist z.B., einen Wert auf "= 0" zu prüfen, statt
IsZero zu verwenden.