資源描述:
《數(shù)值分析實(shí)驗(yàn) 誤差分析》由會員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在行業(yè)資料-天天文庫。
1、實(shí)驗(yàn)報告課程名稱數(shù)值分析實(shí)驗(yàn)實(shí)驗(yàn)項目誤差分析專業(yè)班級姓名學(xué)號指導(dǎo)教師成績?nèi)掌谝?、?shí)驗(yàn)?zāi)康?.了解誤差分析對數(shù)值計算的重要性。2.掌握避免或減小誤差的基本方法。二、實(shí)驗(yàn)設(shè)備安裝有C、C++或MATLAB的計算機(jī)。三、實(shí)驗(yàn)原理根據(jù)不同的算法,得到的結(jié)果的精度是不一樣的。四、實(shí)驗(yàn)內(nèi)容步驟求方程ax2+bx+c=0的根,其中a=1,b=-(5×108+1),c=5×108采用如下兩種計算方案,在計算機(jī)上編程計算,將計算結(jié)果記錄下來,并分析產(chǎn)生誤差的原因。方案一:方案二:要求:編寫程序?qū)崿F(xiàn)該算法;調(diào)試程序,檢查輸出結(jié)果。五、實(shí)驗(yàn)結(jié)果及分析比起方案一,方案二更為精確。六、思考題思考題
2、:為了防止誤差危害現(xiàn)象的產(chǎn)生,以保證計算結(jié)果的可靠性,數(shù)值運(yùn)算中應(yīng)注意哪些原則?試舉例說明。答:數(shù)值運(yùn)算的時候,要注意運(yùn)算負(fù)號的優(yōu)先級,模糊的時候要加上括號以避免錯誤。調(diào)用函數(shù)的時候,要注意類型的對應(yīng)。例如調(diào)用pow(double,double)的時候,里面的參數(shù)是double型的。七、心得體會及實(shí)驗(yàn)改進(jìn)建議通過這次的實(shí)驗(yàn),更加清楚調(diào)用函數(shù)的時候該注意一些小問題,例如數(shù)據(jù)的類型和調(diào)用函數(shù)。同時讓我更了解分析誤差以及如何去縮小誤差。八、實(shí)驗(yàn)代碼#include#includevoidmain(){floata=1,b=-(500000000
3、+1),c=500000000,q;floatx1,x2,x3,x4;q=b*b-4*a*c;x1=(-b+sqrt(q))/2;x2=(-b-sqrt(q))/2;x3=-(b-sqrt(q))/2;x4=c/x1;printf("%f",x1);printf("%f",x2);printf("%f",x3);printf("%f",x4);}佛山科學(xué)技術(shù)學(xué)院實(shí)驗(yàn)報告課程名稱數(shù)值分析實(shí)驗(yàn)實(shí)驗(yàn)項目Lagrange插值專業(yè)班級09計算機(jī)科學(xué)與技術(shù)2班姓名張國烽學(xué)號2009314215指導(dǎo)教師成績?nèi)掌谝弧?shí)驗(yàn)?zāi)康?.掌握利用Lagrange插值法及Newton
4、插值法求函數(shù)值并編程實(shí)現(xiàn)。2.程序具有一定的通用性,程序運(yùn)行時先輸入節(jié)點(diǎn)的個數(shù)n,然后輸入各節(jié)點(diǎn)的值(),最后輸入要求的自變量x的值,輸出對應(yīng)的函數(shù)值。二、實(shí)驗(yàn)設(shè)備安裝有C、C++或MATLAB的計算機(jī)。三、實(shí)驗(yàn)原理1.插值的基本原理(求解插值問題的基本思路)構(gòu)造一個函數(shù)y=f(x)通過全部節(jié)點(diǎn),即(i=0、1、…n)再用f(x)計算插值,即2.拉格朗日(Lagrange)多項式插值Lagrange插值多項式:3.牛頓(Newton)插值公式四、實(shí)驗(yàn)內(nèi)容步驟1.給定,構(gòu)造Lagrange插值函數(shù)計算。2.已知4個點(diǎn)的函數(shù)值如下表,用Newton插值法求x=0.596時的函
5、數(shù)值。i0123xi0.400.550.650.80yi0.410750.578150.696750.88811五、實(shí)驗(yàn)結(jié)果及分析1.拉格朗日插值2.牛頓插值六、思考題(無)七、心得體會及實(shí)驗(yàn)改進(jìn)建議通過這次實(shí)驗(yàn)我對拉格朗日插值和牛頓插值的原理的認(rèn)識變得更加的深刻,明白了跟多編寫此程序時要注意的問題。八、實(shí)驗(yàn)代碼#include#include#include#defineMax100usingnamespacestd;floatxi[Max],yi[Max],value_x;intn;floatfenzi[Max],fe
6、nmu[Max][Max];voidgetdata(){cin>>n;for(inti=0;i>xi[i]>>yi[i];}cin>>value_x;}voidinit(),{inti,j;for(i=0;i7、j