计算机浮点数运算处理
实现四舍五入
计算机运算浮点型转整形时,不会按四舍五入进行运算,而是直接将小数点后数据丢失。
为避免直接将数据丢失的情况,可将待转换数据+0.5后再进行转换,实现四舍五入运算。
分析:记浮点数f1 = 0.1,f2 = 0.8,转换为整形,实际转换结果为
(int) f1 = 0
(int) f2 = 0
数据处理后为:
(int) (f1 + 0.5) = 0
(int) (f2 + 0.5) = 1
计算机运算浮点型转整形时,不会按四舍五入进行运算,而是直接将小数点后数据丢失。
为避免直接将数据丢失的情况,可将待转换数据+0.5后再进行转换,实现四舍五入运算。
分析:记浮点数f1 = 0.1,f2 = 0.8,转换为整形,实际转换结果为
(int) f1 = 0
(int) f2 = 0
数据处理后为:
(int) (f1 + 0.5) = 0
(int) (f2 + 0.5) = 1