To get more accurate answers, do divisions last, especially integer division.
Change the part of your expression
from ((V409 / 20) * V400)
to ((V409 * V400) / 20)
While algebraically they are "equivalent", computers are discrete beasts and cannot calculate to exact precision (not even with floating point). Integer division can definitely introduce some error. When you do integer division like (10 * 5) / 20, you get a different answer than (10 / 20) * 5.
(10 * 5) / 20
50 / 20
2 (integer division truncates)
(10 / 20) * 5
0 * 5 (integer division truncates)
0
Try to do as much with integer arithmetic as you can, even though you get these strange answers, it's faster and sometimes more accurate working with larger numbers than 32 bit floating point (sometimes you have to do floating point because it's TOO large). As long as V409 * V400 can never exceed 2,147,483,647
then your integer math will be fine.