> 其他 >
自然对数底数e在Excel中计算
自然对数的底数e是(1+1/x)^x函数的极限.
我在Excel的A列里面设置了1、2、3一直到100,
在B列里面设置了公式=10^A ,即10的A次方,
在C列里然后求(1+1/B)^B的值,拖公式后有问题了.
C的值应该就是自然底数e,应该无限趋向2.718281828.,
但是在计算B=10^8时还算是准确的,B=10^9时,C就变成2.718282031.,
B=10^16时,C已经变成1了.
Excel是不是把公式简化了,认为1/x在x趋向无穷大时值为0,然后(1+1/x)^x就成了1的x次方了.
人气:176 ℃ 时间:2020-04-12 12:04:19
解答
在Excel中再现了楼主的情况.
值得注意的是,在B=10^15时,这个求值变成了3.035035207.然后在B=10^16时突然回到1.
这说明,没能在PC上看到e的理论值,主要是由于 系统+芯片 的计算精度不够,很大可能应该是芯片的浮点运算器在计算1/10^16时,返回了0的结果.
至于在B=10^15时,计算结果突然超过3,也就可以理解为:
系统未能返回精确的1/B^15的值,而是返回了一个它能提供的最小数值(这个最小数值显然要大于理论值1E-15),这也反证了在1E-16时,会看到了1是由于系统计算误差.
欢迎继续探讨

顺便说一下,我的是64位Win,楼主的是几位的操作系统?
推荐
猜你喜欢
© 2024 79432.Com All Rights Reserved.
电脑版|手机版