數(shù)值分析課后復習(C語言學習知識編程實現(xiàn))_第1頁
數(shù)值分析課后復習(C語言學習知識編程實現(xiàn))_第2頁
數(shù)值分析課后復習(C語言學習知識編程實現(xiàn))_第3頁
數(shù)值分析課后復習(C語言學習知識編程實現(xiàn))_第4頁
數(shù)值分析課后復習(C語言學習知識編程實現(xiàn))_第5頁
已閱讀5頁,還剩6頁未讀 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領

文檔簡介

1、*L (10分)用Rombe喀方法il算積分=f/小的近似值.誤差不超過101#include #include double f(double x) double ans; ans=exp(x);return ans; void main()double a=1,b=3,error=0.0001,t2020,h,c;int i,j,k,m,n;h=b-a;t00=h*(f(a)+f(b)/ 2;k=1;while(1) t0k=0;m=1;for(j=0;jk-1;j+)m=m*2;for(i=1;i=m;i+)t0k=t0k+h*f(a+(i-0.5)*h);t0k=(t0k+t0k-1)

2、/ 2;for(j=1;j=k;j+)c=1;for(n=0;nj;n+)c=c*4;tjk-j=(c*tj-1k-j+1-tj-1k-j)/(c-1);if(fabs(tk0-tk-10)error) printf(n 積分結果 I lfn,tk0); break; elseh=h/2;k+;積分結果I a 17.36725E2,(10分)用簡單誥代法求解方程/華納尸伍 要求同一9加10%#include #include double f(double t) double ans;ans=pow(cos(t),1.0/3); return ans;void main() double x=

3、0,eslong=0.000001,x0;int N=20,i;printf(n 近似初值 x0 = %lfn,x); for(i=0;iN;i+) x0=x; x=f(x);printf( x%d = %lfn,i+1,x);if(fabs(x-x0)eslong) break;if(fabs(x-x0)eslong)printf(得到近似結果為x%lfnn,x,i); elseprintf(迭代失敗 n);近彳比初值 = 0-RS003B xl = 1.000000 x2 = 0.S14477 乂3 = 0.8S2051 jc4 = Q.8S978B x5 = B. 86,7394 - 0

4、.8&4822 x7 - 0,8&S&95 xS = U.S&S399 x?=98&54 xl0 = 。&65465 xll - 0,865477 X12 = 0.865473 x13 = 0.&B5474 X140,865474得引近似結果為 x仁0.865474,(10用四階RK方法求初值問題的數(shù)值解.取步長汁算結果取X位小數(shù).Jy = 1 十0 W 110) =0#include #include double a=0,b=1,x,y=0,h=0.1,k1,k2,k3,k4;int i,N;double f(double t,double s) double ans;ans=1+t*t;

5、return ans;void main() N=(b-a)/h;x=a;printf(n 初值為(x0,y0) = ( %.8f , %.8f )n,x,y);for(i=0;iN;i+) k1=f(x,y);k2=f(x+h/2,y+h*k1/2);k3=f(x+h/2,y+h*k2/2);k4=f(x+h,y+h*k3);y=y+h*(k1+2*(k2+k3)+k4)/ 6;x=x+h;printf(第 %d 次輸出結果為 (x%d,y%d) = ( %.8f , %.8f )n,i+1,i+1,i+1,x,y); 刃值才Eir i i出結果為 讓荒果為 出結果為 Llji ffi 4-

6、,第e ,??;曲td結果為第砍前出結果為第瞅施出結果為我?融結C 時.QS0B00B0 . 6.0O0B00B0 ?C0.30000000,0.3090SS0G0.4SB00030,0.42133333?C3.5QB0QQ00,0.41666(7)0.80000003,0.97O66C67) 0.90000000 = 1.00000000 8 1.33333333 54. U0分)已知函散衣如卜,用三次插值求NL5)的近似值.XiL2294,65.8氏7此14.8433.71P 5S3679.2496 79#include void main()double datax4=1.229,4.6,

7、5.8,datay10=14.84,33.71,58.36,79.24,l3,x=1.5,y;int i,j;y=0;for(i=0;i=3;i+)li=1;for(j=0;ji;j+)li=(x-dataxj)/(dataxi-dataxj)*li;for(j=i+1;j=3;j+)li=(x-dataxj)/(dataxi-dataxj)*li;y=y+datayi*li;printf(n f(x)在 x = %f 處的近似值為:y = %fn,x,y);RG在 X - l.5enO0 處的近似值為 m y - 17.7500005. U0分己知數(shù)據(jù)表如F,試求其最小二乘二次擬合多項式.1

8、.22344,55.66.77.XS.910.Q1L714.SJ72L4431.3944.7361.468L57105.11BL191#include void main()(double datay9=11.7,14.87,21.44,31.39,44.73,61.46,81.57,105.11,131.91;int m=2,i,j,k;double p,data94,a34,datax9=1.2,2.3,3.4,4.5,5.6,6.7,7.8,8.9,10.0;for(i=0;i9;i+)for(j=1;j2*m+1;j+)dataij=1;for(k=0;kj;k+) dataij=da

9、taij*dataxi;for(i=0;im+1;i+)for(j=0;jm+1;j+)aij=0;for(k=0;k9;k+) aij=aij+dataki+j;a00=9;a0m+1=0;for(i=0;i9;i+)a0m+1=a0m+1+datayi;for(i=1;im+1;i+)aim+1=0;for(j=0;j9;j+)p=datayj;for(k=0;ki;k+) p=p*dataxj;aim+1=aim+1+p;生成m+1行,m+2列增廣矩陣/for(i=0;im+1;i+)顯示方程組 /for(j=0;jm+2;j+)if(j!=m+1) printf(%f)a%d ,aij

10、,j); if(j!=m) printf(+ );) else printf(= %f n,aij);)for(i=0;im;i+)/ 高斯消去法 if(aii!=0) for(j=i+1;jm+1;j+)aji=aji/aii;for(k=i+1;km+2;k+) ajk=ajk-aik*aji; ) else break;)if(amm!=0&i=m)amm+1=amm+1/amm;for(i=2;i=m+1;i+) for(j=1;ji;j+)am+1-im+1=am+1-im+1-am+1-im+1-j*am+1-jm+1;am+1-im+1=am+1-im+1/am+1-im+1-i

11、; ) printf(方程組的解為:n);for(j=0;j稹1 * (33548= 31&2Q.1ES388方程組的解為:-12.976541卜1 = -2.B00515旦2 = 1,398787式合親項式為:P2(x) = + C-Z.000515x x2心(2。分)分別用列主元法和J&sbi迭代法求解方程組.F元 1 - 22 -= 3一2x1 + 10,- 3y5 = 15- F - 2xz + 5工3 = 10列主元素法#include #include void main() double a34=1,-2,-1,3,-2,10,-3,15,-1,-2,5,10,mov,comp;

12、int i,j,k,nrow;for(i=0;i2;i+)comp=fabs(aii);/for(k=i;k=comp) nrow=k;comp=fabs(aki); for(j=0;j=3;j+) mov=aij;aij=anrowj;anrowj=mov;printf(方程第d行互換位置后如下n,i+1);for(j=0;j3;j+)printf(%f)x1 + (%f)x2 + (%f)x3 = %fn,aj0,aj1,aj2,aj3); if(a皿i!=0) for(j=i+1;j3;j+)a皿i=a皿/aii;for(k=i+1;k=3;k+) ajk=a皿k-aik*a皿i;a皿i

13、=0;printf(方程經(jīng)d次消元如下n,i+1);for(j=0;j3;j+)printf(%f)x1 + (%f)x2 + (%f)x3 = %fn,aj0,aj1,aj2,aj3);elsebreak;if(a22!=0&i=2)printf(方程化簡得n);for(i=0;i3;i+)printf(%f)x1 + (%f)x2 + (%f)x3 = %fn,ai0,ai1,ai2,ai3);a23=a23/a22;for(i=2;i=3;i+)for(j=1;ji;j+)a3-i3=a3-i3-a3-i3-j*a3-j3;a3-i3=a3-i3/a3-i3-i;printf(方程組的解

14、為:n);for(j=0;jx2 + c-1.006008x3 = 3.000080 (-1.000009)x1 1 (-2.030000x2 *- 10.000060方程經(jīng)i次消元如F-2 . G0000Hxd + (13.900000x2 * C3.080000x3 =.GQD0QQka.00Q008xl + x2 + x3 - 10.5G0OQB (0.00600axl + x2 +- 2-560600方程第之行互換位置后如下:2 -000009x1 +-090009x2 *3.000003x3 = 15 .6000000,000000)x1 + x2 * x3 = 2.506066 (

15、0.000000xl + x2 + c-2.500000x3 - 10.500000 計程經(jīng)漱消元如FC-2 *1- m + C3 .000000?x3 = 15 .BOGOBGxZ + C6.500600x3 = 2.50O0OS (0.000000)x1 + (0.a00900x2 + 0.2857147x3 - 11-571425 質(zhì)程化簡得 C-2 . 060089)x1 1- C10-+ C-3= 15 .B06SB6xl + (-7.0O008Sx2 + C6.500800m3 = 2.50S6OS (0.0O00a0xl +*(0.285714M3 = I1-S71429方程組的

16、解為二 xi = iie.aaaaea x2 = 37.250000 x3 40.09003Jacobi 迭代法#include #include void main()double a37=1,-2,-1,3,-2,10,-3,15,-1,-2,5,10,error=0.000001,norm;int N=423,i,j,k;a04=0,a14=0,a24=0;for(i=0;i3;i+)把a矩陣轉化為b矩陣ai6=aii;for(j=0;j3;j+)aij=-aij/ai6;ai3=ai3/ai6;aii=0;printf( 化為 b 矩陣如下n);for(i=0;i3;i+)printf

17、(%f %f %f %fn,ai0,ai1,ai2,ai3);for(i=1;iN;i+)for(j=0;j3;j+)aj5=0;for(k=0;k3;k+)aj5=ak4*ajk+aj5;aj5=aj5+aj3;norm=0;for(k=0;k3;k+)norm=norm+fabs(ak4-ak5);if(normerror)break;elsefor(k=0;k3;k+)ak4=ak5;if(normerror)printf(計算結果為n);for(i=0;i3;i+)printf( x%d = %.3fn,i+1,ai5);elseprintf(迭代失敗 n);K為b矩陣如下0.00Q8

18、39 2.j. BQ0000 3 . QOQB0Q 8.200000 0000006 6.3Q00O0 1.508QGO 0.200009 9.400000 3.090000 2.000000計算結果為xl = 118.000x2 = 37.250x3 = 49.500現(xiàn)場考試題目 1#include stdio.h#include math.hdouble f(double x)double ans;ans=exp(x);return(ans);void main() double a=-1,b=1,error=0.0001,m=1,h,T0,T,F; int k;h=(b-a)/2;T0=h*(f(a)+f(b);while(1)F=0;for(k=1;k=pow(2.0,m-1);k+) F=F+f(a+(2*k-1)*h);T=T0/2+h*F;if(fabs(T-T0)error)break;m+;h=h/2;T0=T;printf(積分結果為I弋fn,T);題目 2#include st

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論