for(float x=0,s=0;x!=60;x=x+0.3) s=s+x;变量x的值为什么是可以远大于60?
来源:学生作业帮助网 编辑:作业帮 时间:2024/07/11 23:05:24
![for(float x=0,s=0;x!=60;x=x+0.3) s=s+x;变量x的值为什么是可以远大于60?](/uploads/image/z/11100642-42-2.jpg?t=for%28float+x%3D0%2Cs%3D0%3Bx%21%3D60%3Bx%3Dx%2B0.3%29+s%3Ds%2Bx%3B%E5%8F%98%E9%87%8Fx%E7%9A%84%E5%80%BC%E4%B8%BA%E4%BB%80%E4%B9%88%E6%98%AF%E5%8F%AF%E4%BB%A5%E8%BF%9C%E5%A4%A7%E4%BA%8E60%3F)
xAO0JA[ V-#<8P".
S1fNcBGL1L<zzylכNyв%X RU7%MgMOyq_Cȓ*3MlhkV\NaD\ }MDd"AU"Р?W\L 8ouK{<Ӊʰd#^\[=u?b5EeգLT/Wimp/
for(float x=0,s=0;x!=60;x=x+0.3) s=s+x;变量x的值为什么是可以远大于60?
for(float x=0,s=0;x!=60;x=x+0.3) s=s+x;
变量x的值为什么是可以远大于60?
for(float x=0,s=0;x!=60;x=x+0.3) s=s+x;变量x的值为什么是可以远大于60?
实数判断时候有精度问题,比如你认为 x == 60 的时候,其实可以是 x == 60.00000000000000001 .
所以浮点数判断相等的时候要允许有误差,可以取一个较小的浮动值,比如
fabs(x - 60) < 1e-10