計算機精度導致各種誤差,大數吃小數

如果 p ? p^* p?是p的近似, ∣ p ? ? p ∣ |p^*-p| p??p是絕對誤差, ∣ p ? ? p ∣ / ∣ p ∣ |p^*-p|/|p| p??p∣/∣p是相對誤差

舍入誤差,就是數據表示精度不足帶來的誤差

a=0.1234564≈0.123456=fl(a)
b=0.1234546≈0.123455=fl(b)

在上面發生了舍入誤差
fl(a)-fl(b)=0.000001
a-b=0.0000018

所以在計算a-b時絕對誤差是0.0000008
但是想對誤差是0.44
從絕對誤差的角度看,差異很小,但是從相對誤差的角度來看誤差就非常大了

大數吃小數:
如果精度有限可能會發生下面的情況
100000000 + 0.5 = 100000000 100000000+0.5=100000000 100000000+0.5=100000000
100000000 + 0.5 ? 100000000 = 0 100000000+0.5-100000000=0 100000000+0.5?100000000=0
( 100000000 + 0.5 ? 100000000 ) ? 100000000 = 0 (100000000+0.5-100000000)*100000000=0 (100000000+0.5?100000000)?100000000=0
這和真實結果差了很多,因為精度不夠,大數加小數的時候把小數吃掉了,導致后續結果都出現問題,一個辦法是交換順序
100000000 ? 100000000 = 0 100000000-100000000=0 100000000?100000000=0
100000000 ? 100000000 + 0.5 = 0.5 100000000-100000000+0.5=0.5 100000000?100000000+0.5=0.5
( 100000000 ? 100000000 + 0.5 ) ? 100000000 = 50000000 (100000000-100000000+0.5)-100000000=50000000 (100000000?100000000+0.5)?100000000=50000000

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/164306.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/164306.shtml
英文地址,請注明出處:http://en.pswp.cn/news/164306.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

力扣labuladong一刷day15天K個一組翻轉鏈表與回文鏈表

力扣labuladong一刷day15天K個一組翻轉鏈表與回文鏈表 一、25. K 個一組翻轉鏈表 題目鏈接:https://leetcode.cn/problems/reverse-nodes-in-k-group/ 思路:k個一組翻轉鏈表,每k個翻轉抽取出一個單獨的方法reverse,翻轉a到b&…

力扣刷題第二十九天--二叉樹

前言 問問自己,刷題的效果真的達到了嗎? 內容 一、翻轉二叉樹 226.翻轉二叉樹 給你一棵二叉樹的根節點 root ,翻轉這棵二叉樹,并返回其根節點。 遞歸 func invertTree(root *TreeNode) *TreeNode {if rootnil{return root}…

Vue中的$nextTick的作用

在 Vue 中,當某些數據發生變化時,DOM 并不會立即更新。相反,Vue 會在下一個事件循環周期(microtask)中異步執行更新,這樣可以避免頻繁的 DOM 操作。然而,有時候我們需要在 DOM 更新后執行一些操…

2024-NeuDS-數據庫題目集

一.判斷題 1.在數據庫中產生數據不一致的根本原因是冗余。T 解析:數據冗余是數據庫中產生數據不一致的根本原因,因為當同一數據存儲在多個位置時,如果其中一個位置的數據被修改,其他位置的數據就不一致了。因此,在數據…

11.docker的網絡-docker0的理解及bridge網橋模式的介紹與實例

1.docker0的基本理解 安裝完docker服務后,我們首先查看一下宿主機的網絡配置 ifconfig我們可以看到,docker服務會默認在宿主機上創建一個虛擬網橋docker0,該網橋網絡的名字稱為docker0。它在內核層連通了其他物理或者虛擬網卡,這…

ubuntu22.04系統下載程序和依賴,并拷貝到指定路徑下

腳本1 apt install aptitude apt-get -d install xxx #xxx是待下載的安裝包 mv /var/cache/apt/archives/* /home/tuners/1apt install aptitude apt-get -d install xxx mv /var/cache/apt/archives/*.deb /home/tuners/1 xxx 為程序包名稱 /home/tuners/1為保存程序包的…

從零開始的搭建指南:開發高效的抖音預約服務小程序

預約服務小程序提高了效率,節省了用戶時間。下文,小編將與大家一同探討如何從零開始打造預約服務小程序。 第一步:明確需求和目標 確定你的小程序主要服務領域是什么?是醫療預約、美容美發、餐廳預訂還是其他行業?明…

Python 如何開發出RESTful Web接口,DRF框架助力靈活實現!

Django Rest Framework(DRF)是構建強大且靈活的Web API的優秀工具。它基于Django,提供了一套用于構建Web API的組件和工具,簡化了API開發過程,同時保留了Django的優雅和強大。 一、Web應用模式 在開發Web應用時&…

Android組件化搭建學習

什么是組件化? 為什么要用組件化?在項目的開發過程中,隨著開發人員的增多及功能的增加,如果提前沒有使用合理的開發架構,那么代碼會越來臃腫,功能間代碼耦合也會越來越嚴重,這時候為了保證項目…

C# 忽略大小寫

在 C# 中,你可以通過以下幾種方式來忽略大小寫: 使用 ToLower 或 ToUpper 方法將字符串轉換為全小寫或全大寫,然后進行比較。使用 Compare 或 CompareOrdinal 方法,并傳入正確的 StringComparer 實例以指示比較應該忽略大小寫。使…

Android 開發Java調用Kotlin提示包不存在

在kotlin代碼所在module的build.gradle設置 plugins {id org.jetbrains.kotlin.android }

Unity中Shader的Standard材質解析(一)

文章目錄 前言一、在Unity中,按一下步驟準備1、在資源管理面板創建一個 Standard Surface Shader2、因為Standard Surface Shader有很多缺點,所以我們把他轉化為頂點片元著色器3、整理只保留主平行光的Shader效果4、精簡后的最終代碼 前言 在Unity中&am…

基于Springboot+Vue選課系統

選課系統要求 (1)數據庫表:教師信息表、學生信息表、課程表、選課表 其中,教師信息表、學生信息表和選課表的數據需要提前設置,本題主要操作課程表 (2) 技術架構: 后臺使用springboot 前端使用vue-admin-template (3) 考試時間&…

鴻蒙(HarmonyOS)應用開發——安裝DevEco Studio安裝

前言 HarmonyOS華為開發的操作系統,旨在為多種設備提供統一的體驗。它采用了分布式架構,可以在多個設備上同時運行,提供更加流暢的連接和互動。HarmonyOS的目標是提供更高的安全性、更高效、響應更快的用戶體驗,并通過跨設備功能…

Vue3 響應式數據 reactive使用

ref 與 reactive 是 vue3 提供給我們用于創建響應式數據的兩個方法。 reactive 常用于創建引用數據,例如:object、array 等。 reactive 則是通過 proxy 來實現的響應式數據,并配合 reflect 操作的源對象。 reactive 創建引用數據&#xff1…

【實戰精選】掌握圖像風格遷移:構建基于生成對抗網絡的系統

1.研究背景與意義 隨著計算機技術的不斷發展,圖像處理和計算機視覺領域取得了長足的進步。圖像風格遷移是其中一個備受關注的研究方向,它可以將一幅圖像的風格特征應用到另一幅圖像上,從而創造出新的圖像。這項技術具有廣泛的應用前景&#…

lazada商品詳情數據接口(lazada.item_get)

Lazada商品詳情數據接口是Lazada電商平臺提供的一個API接口,用于獲取商品詳細信息。通過這個接口,開發者可以獲取Lazada平臺上商品的豐富信息,包括商品名稱、價格、庫存、描述、圖片等。這個接口使用RESTful風格,并通過HTTP協議進…

經過了多少輪洗牌后,序列中間位置的牌面為9 ← random.shuffle()

【題目描述】 有牌面為1~9的撲克牌,現在進行洗牌,并存于一個序列中。 請輸出經過了多少輪洗牌后,序列中間位置的牌面為9。【算法分析】 Python 中使用 random 模塊中的 shuffle 函數,可隨意排列列表中的元素。 本題中的輸出&#…

【基礎知識】AB軟件RSLinx的版本說明

哈嘍,大家好,我是雷工! 之前對AB的軟件了解比較少,在工作中未接觸過,最近一次現場勘察時,有很多中控系統都是AB的,借此機會對AB軟件有了些許了解。 一、RSLinx是什么軟件? RSLinx是…

fork介紹,返回值問題,寫時拷貝,進程切換,子進程開始執行的位置,子進程的用途

目錄 fork 介紹 fork的返回值問題 介紹 fork()時,系統要做什么 數據是否要獨立 如果共享的話,就會出現問題! 寫時拷貝 引入 介紹 舉例(fork返回值) fork返回的值是什么 創建失敗的原因 子進程執行位置從哪里開始 引入 進程切換 子進程執行的位置 子進程的…