没错菜鸟的经过这几天的敲代码过程中又发现了一些细节问题,又是抓细节的代码,让我深有体会基础太太太重要。下面是一个华氏温度转换为摄氏温度的例子
该代码显示错误,原因是我按数学的转换公式直接代入,显示是显示红线表示错误,我认真看了一下,我忽略了一个重要的点,就是数学运算和符号跟计算机的是不同的,像上面错误的地方是因为我将数学的乘法直接带入,而计算机的乘法符号是 * 。所以我将错误更改后如下:
更改后没有显示错误,但是输入的值却为0.0,我输了好几个值,显示的依旧是0.0,我又思路堵塞,这些问题真的一个接一个出来。我又去看了几遍代码,没有问题,当我认真看向那个公式时 ,我发现5/9是等于0的。因为是计算机的除法,只保留整数部分,所以是0。
这种情况有以下简单解决:1, 5.0/9 2,5/9.0
经过改正后结果正确了。
经过这个代码总结出:
1,数学中的运算跟计算机的不同。(数学乘法是x或者 ,计算机是*。)
2,计算机的除法“/”计算结果是只保留整数部分。
3,细节跟基础决定一切。