1.浮点数运算误差
浮点数计算可能存在误差,如正确答案为1,实际存储值为0.999999999
int main(){
double a=0.99999;
int b=a;
cout<<b;
return 0;
}
如上例,由于转换为整数后的值为“不超过a的最大整数”,结果b==0
通过b=(a+0.5)可以实现四舍五入,此时在a取值(0.5,1.5)的区间内时b==1
1.浮点数运算误差
浮点数计算可能存在误差,如正确答案为1,实际存储值为0.999999999
int main(){
double a=0.99999;
int b=a;
cout<<b;
return 0;
}
通过b=(a+0.5)可以实现四舍五入,此时在a取值(0.5,1.5)的区间内时b==1