[0]浮点数在python里面是二进制的形式存储的,比如0.1,就不能找到一个有限的二进制形式来表示它,所以python会对0.1的二进制表示进行截断,造成误差,注意,误差是可以累积的!
[1]python中的print会对浮点数在10多位后进行截断,0.999999999999999999999。。。999会被输出1.这点在调试时候会造成疑惑.
[2]对浮点数进行比较的时候需要采取误差比较的办法
练习:自己写一个实数n次根的程序.
版本1:
import math
def sqroot(x,n,ellpison):
assert(x>0)##assume x is positive
ctr = 0
[low,high] = [x,