计算机的错误计算(一百六十三)

摘要 四个算式"sin(0.00024/2)^2"、"(1-cos(0.00024))/2"、"(1-sqrt(1-sin(0.00024)^2))/2"以及"sin(0.00024)^2/(2+2*sqrt(1-sin(0.00024)^2))"是等价的。但是,在 MATLAB 中计算它们,输出不完全一致:中间两个算式的输出中含有错误数字。

例1. 已知

用上述四个算式依次计算

直接贴图吧 :

事实上,16位的正确结果为 0.1439999993088000e-7(ISRealsoft 提供)。

容易看出,MATLAB的中间两个输出中,与红色数字对应的有效数字是错误数字。这样,中间两个运算的输出中均有7位错误数字;有效数字的错误率均为 7/16 = 43.75% .

注:可参考计算机的错误计算(一百二十七)。出错原因可参看(一百二十九)

参考文献

1\] Ward Cheney, David Kincaid. Numerical Mathematics and Computing. 6th Ed. CA: Thomson Higher Education, 2008, p, 37

相关推荐
workflower5 小时前
时序数据获取事件
开发语言·人工智能·python·深度学习·机器学习·结对编程
CoderYanger6 小时前
C.滑动窗口-求子数组个数-越长越合法——2799. 统计完全子数组的数目
java·c语言·开发语言·数据结构·算法·leetcode·职场和发展
C++业余爱好者6 小时前
Java 提供了8种基本数据类型及封装类型介绍
java·开发语言·python
想用offer打牌6 小时前
RocketMQ如何防止消息丢失?
java·后端·架构·开源·rocketmq
皮卡龙6 小时前
Java常用的JSON
java·开发语言·spring boot·json
利刃大大7 小时前
【JavaSE】十三、枚举类Enum && Lambda表达式 && 列表排序常见写法
java·开发语言·枚举·lambda·排序
float_六七7 小时前
Java反射:万能遥控器拆解编程
java·开发语言
AI Echoes7 小时前
构建一个LangChain RAG应用
数据库·python·langchain·prompt·agent
han_hanker7 小时前
java 异常类——详解
java·开发语言
源码获取_wx:Fegn08957 小时前
基于springboot + vue健身房管理系统
java·开发语言·前端·vue.js·spring boot·后端·spring