ShuXueZhenMiHu 发表于 2022-8-16 10:38:08

小贾自然指数函数计算器

大家好,我做了一个自然指数函数的计算器。她可以求自然指数函数的近似值。自然指数函数就是e^x函数,也可以写成exp(x)形式。 exp(1)=e结果e为自然常数; exp(0)=1.
如果我们要计算exp(1000)的近似值,并且要求误差小于0.001。我们只需在第一个文本框中输入1000,然后在第二个文本框中输入0.001,最后点击计算。

在第三个文本框中显示的是exp(1000)的近似值。在误差上限文本框中显示的是该近似值的误差上限,即最大的误差。


ShuXueZhenMiHu 发表于 2022-8-21 14:56:11

在自然指数函数计算器二中,a 的数值支持分数形式的输入。
下图演示如何找到一个 \( exp(\frac{1}{3}) \) ,即\( e^{\frac{1}{3}} \) ,的误差小于0.00001的近似值 。我们输入1/3在第一个文本框,输入0.00001在第二个文本框,点击计算。


误差小于 0.00001 的 \( e^{\frac{1}{3}} \) 的近似值以两种形式进行显示。首先是科学记数法形式,另外一种是分数形式。 即分数 \(\frac{40696}{29160} \) 是满足误差要求的 \( e^{\frac{1}{3}} \) 的近似值。该近似值的误差上限为2.0E-6。

ShuXueZhenMiHu 发表于 2022-8-27 09:56:00

这个计算器使用的是大数数据结构。所以它可以对自然指数函数在很大或者很小的位置上进行求近似值操作。
下图显示的是小贾自然指数函数计算器二求出的exp(50000),即\( e^{50000} \),的近似值,该近似值的误差小于1。
从第三个文本框中可以看出该近似值的整数部分有21715位。对于这么大的计算结果,小于1的误差其实已经说明该近似值已经非常精确了。

这么大的运算结果超出了双精度数数据结构的表示范围。在Windows自带的计算器上计算exp(50000),Windows计算器会报溢出错误。


ShuXueZhenMiHu 发表于 2022-9-5 20:55:33

本帖最后由 ShuXueZhenMiHu 于 2022-9-5 20:58 编辑

因为小贾计算器使用的是指数函数 \(e^{x}\) 的展开式进行近似计算,并且小贾使用的是分数(有理数)数据结构,所以计算 \(\sqrt{e}\) 或 \(\frac{1}{\sqrt{e}}\) ,对于小贾来说,没有任何特殊的地方,因为它们分别对应\(e^{\frac{1}{2}}\)和\(e^{-\frac{1}{30}}\)。我们只需在第一个文本框中输入1/2 或 -1/30,在第二个文本框中输入我们要求的精度(误差),然后点击计算按钮即可。

无心人 发表于 2022-9-6 08:10:14

用MPFR的话,有函数可以算精确结果,你只需要找近似分数就行,另外,近似逼近感觉平方根形式似乎更简洁些,分数分子分母大到一定程度,并不比近似小数更好看
页: [1]
查看完整版本: 小贾自然指数函数计算器