Where have I gone wrong with my int maths?

Thank you ea123. Gyro_z * duration may well sometimes be less than 1,000,000 also. Does this mean that I can't avoid having to use duration as a float here?