第三章计算机进行小数运算时出错的原因

以前的我以为计算机是什么都可以做的不会出现什么错误,但我看完这一章以后我才知道,计算机在程序运行后无法得出自己想要的结果,就是十进制转换二进制时,出现了小数的情况

下边我可以通过这个例子就能看出来;

#include <studio.h>

void main() {

float sum;

int i;

sum = 0;

for(i = 1; i <= 100;i++){

sum+=0.1;

}

print f ("%f\n", sum);

}

在这个程序中我们可以看到这是一个利用for循环来实现累加和的程序,我们看到在0.1进行一百次累加和结果是10,

而运行计算机输出的结果是10.000002,这个就是我们没有考虑处理小数的机制导致不能正确运算的。

其实是因为有些十进制的小数无法转换计算机可以识别的二进制数。

小数点后四位用二进制表示时范围是0.0000-0.1111 , 只能表示0.5  0.25   0.125等数值

而0.1在计算机处理时只是一个相似值,不能得到正确的答案。

在这一章中有了解了许多计算机的许多知识,我相信在以后的学习中,通过老师推荐的书籍,讲解的学习方法,我们能对计算机更加了解,

计算机的了解我们现在还是一个皮毛,希望以后能更加努力学习,去了解计算机。

 

posted @ 2019-01-26 19:37  爱尔迪  阅读(246)  评论(0编辑  收藏  举报