I used to think that a:=b/640*pi; should be the same as a:=b/(640*pi); it turns out that in the first case the multiplication happens at runtime and in the second 640*pi is evaluated at compiletime and is a constant at runtime (at least in Delphi6).