计算机的错误计算(二百二十六)

摘要 前面(二十七)等谈到,对于 \\exp(x) 函数,若 \|x\|\>1, 则数学库函数的结果中一般含有约 "x 的整数位数"位错误数字。本文再探讨之。

本文是给一位研一学生的回复。

例1. 利用 Python、C、Java、C# 计算 \\exp(650.98);从而进一步验证错数理论。

首先,利用 ISReal在线服务 给出正确结果:0.5212209090956856e283。

其次,贴图给出 Python 3.12.10 的输出:

然后,通过 在线网站 给出C代码、Java、C# 的计算结果:

从上看到,4个输出均为 5.212209090956951e282。这样,最后3位红色数字是错误数字。因此,该例4个输出结果完美印证了错数理论:由于 x=650.98 有3位整数,所以数学库函数的输出中有3位错误数字。

例2. 计算 \\exp(2345.67),验证错数理论。

由于 2345.67 比较大,所以普通库函数会溢出。这里,我们选 Python 的 mpmath 库进行计算。

下面是计算的截图:

从上面可以看出,Python 的计算结果为 5.1468008735812e+1018;而正确结果是 0.5146800873580827e1019 (ISReal在线服务 提供)。这样,Python 有12位正确数字,4位错误数字。

这正印证了错数理论:2345.67有4位整数,因此 Python的输出中含有4位错误数字。​​​​​

相关推荐
chuan.bai4 小时前
Java RAG 实战(第 11 篇):RAG 知识工作台网页
java·开发语言·人工智能
离陌在学C#6 小时前
C# 事件(Event)详解:从概念到实战
开发语言·c#
0x536 小时前
网站通信(一)
java
Terra.K7 小时前
Java异常学习[特殊字符]
java·开发语言·学习
安_7 小时前
如何构建和使用向量索引?HNSW 和 IVF 有什么区别?
python·ai
rockey6278 小时前
C#脚本引擎之AScript与Flee对比
c#·.net·script·eval·动态脚本
葡萄城技术团队8 小时前
InfluxDB 2\.x 深度解析:核心架构、Flux 函数与制造业落地指南(三)
java·开发语言·架构
Super 含8 小时前
Android 启动优化(五):线程、GC 与 IO 为什么会拖慢启动?
java·服务器·数据库
counting money8 小时前
Java IO流详解:从InputStream到文件操作实战
java·开发语言·python
坚持学习前端日记9 小时前
Python SQLAlchemy ORM 从0到1精通实战手册(基础到复杂高阶)
数据库·python·oracle