计算机的错误计算(一百一十四)

摘要 回复读者提问,就计算机的错误计算(六)中案例,讨论其另外一种形式: 的错误计算问题。

一读者来信说,在计算机的错误计算(六)中,使用了两种计算方法。实际上,还有另外一种更为简便的方法:

下面探讨第3种方法的计算精度。

例1. 已知 计算

不妨在 Python 中用 ** 运算与 math 库中 pow 函数计算,则有:

在线运行Rust程序:

rust 复制代码
fn main() {
    let x = 0.99993;
    let result = power(x - 1.0, 4);

    println!("{}", result);
}

fn power(base: f64, exponent: u32) -> f64 {
    base.powi(exponent as i32)
}

则输出同样的结果(虽然形式不同):0.000000000000000024010000000019886 .

然而,准确值是 0.2401e-16(ISRealsoft 提供)。这样,它们有效数字的错误率均为 4/16 = 25% 或 5/17 = 29.4% .

点评:显然,与前两种方法相比,精度提高许多。但是,它还是有错误数字。特别是,若自变量换一个别的数,则可能增加错误数字。比如,令自变量为 0.9999999999999999(注:该数仍在定义域或程序的要求范围内),则 Python 的输出中只含有1位正确数字。

相关推荐
千谦阙听3 分钟前
C++篇:类和对象(上)
开发语言·c++
仓三10 分钟前
从 Prompt Engineering 到 Context Engineering:2026 年 Agent 性能提升的隐藏杠杆
java·prompt·context
许彰午20 分钟前
07-SqlBuilder六法
java·开发语言·低代码·架构
BS30813_vx23 分钟前
【编号:01652】Spring Boot村务管理系统:财务公开、党建活动与计生服务一体化实战
开发语言·python
孙69034224 分钟前
Spring 注入多例 Bean
java·spring
Jul1en_26 分钟前
【Java 脚手架】封装通用工具类-3
java·开发语言·redis·缓存·ai·bootstrap·rabbitmq
边吃番茄边敲代码35 分钟前
从本地工具到 MCP:给 Agent 接入独立工具服务,并补齐自动化测试
人工智能·python·功能测试·ai·单元测试·pytest
k4m7v2pz43 分钟前
交叉编译 Rust 到 aarch64 Linux 掌机:glibc 版本与 sysroot 重建的完整踩坑记录
rust·glibc·交叉编译·aarch64·zigbuild·sysroot
SugarAbsinthe43 分钟前
【Agent开发实习小记】从人工逐条验证到自动化验收:新 API 接入前的效率瓶颈
人工智能·python·自动化·pytest
liwulin05061 小时前
【VSCODE】能在终端打印的图标
python