找回密码
 欢迎注册
查看: 4513|回复: 3

[原创] 指数函数的函数值的近似计算

[复制链接]
发表于 2023-1-2 23:05:25 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?欢迎注册

×
计算指数函数 \( e^{x} \)  的函数值的近似值。当x的取值很大(或很小)时,小贾计算器八可以计算出对应函数值的前若干位有效数字。
Capture20221231.PNG
本例中,小贾计算器八计算 \( e^{1000000000} \)  的近似值。 \( e^{1000000000} \) 的整数部分一共有434294482位,本例中小贾计算器八只计算了该函数值的前21位有效数字。小贾计算器八是小贾计算器二的补充。

祝大家元旦快乐。
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
发表于 2023-1-2 23:41:13 | 显示全部楼层
一个简单的换底公式,干嘛搞这么复杂?
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
发表于 2023-1-2 23:48:24 | 显示全部楼层
知乎上的代码,供参考:
  1. inline double fast_exp(double y) {
  2.     double d;
  3.     *(reinterpret_cast<int*>(&d) + 0) = 0;
  4.     *(reinterpret_cast<int*>(&d) + 1) = static_cast<int>(1512775 * y + 1072632447);
  5.     return d;
  6. }
复制代码


这个求指数函数exp()的快速近似方法的原理是什么?
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
 楼主| 发表于 2023-1-5 02:51:22 | 显示全部楼层
我用的是大数库,能返回2000位及以上有效数字呢。最重要的是能根据用户输入的误差要求返回符合要求近似值。双精度能返回两千位有效数字吗? 另外指数有四亿那么大,双精度数可以显示吗?小贾返回的是两个大的分数,虽然显示起来像个字符串,但是背后它们是两个数,可以参与以后的运算的。
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
您需要登录后才可以回帖 登录 | 欢迎注册

本版积分规则

小黑屋|手机版|数学研发网 ( 苏ICP备07505100号 )

GMT+8, 2024-11-24 11:54 , Processed in 0.057434 second(s), 20 queries .

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表