解線性方程組的直接方法實驗報告_第1頁
解線性方程組的直接方法實驗報告_第2頁
解線性方程組的直接方法實驗報告_第3頁
解線性方程組的直接方法實驗報告_第4頁
已閱讀5頁,還剩3頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、解線性方程組的直接方法實驗報告解線性方程組的直接方法實驗報告1. 實驗?zāi)康模?、通過該課題的實驗,體會模塊化結(jié)構(gòu)程序設(shè)計方法的優(yōu)點;2、運用所學(xué)的計算方法,解決各類線性方程組的直接算法;3、提高分析和解決問題的能力,做到學(xué)以致用;4、通過三對角形線性方程組的解法,體會稀疏線性方程組解法的特點。2. 實驗過程:實驗代碼:#include stdio.h#include math.h#includeusing namespace std;/Gauss法void lzy(double *a,double *b,int n)int i,j,k;double l,x10,temp;for(k=0;kn-

2、1;k+)for(j=k,i=k;jn;j+)if(j=k)temp=fabs(ajk);else if(tempfabs(ajk)temp=fabs(ajk);i=j;if(temp=0)cout 無解;return;elsefor(j=k;jn;j+)temp=akj;akj=aij;aij=temp;temp=bk;bk=bi;bi=temp;for(i=k+1;in;i+)l=aik/akk;for(j=k;jn;j+)aij=aij-l*akj;bi=bi-l*bk;if(an-1n-1=0)cout 無解;return;xn-1=bn-1/an-1n-1;for(i=n-2;i=0

3、;i-)temp=0;for(j=i+1;jn;j+)temp=temp+aij*xj;xi=(bi-temp)/aii;for(i=0;in;i+)printf(x%d=%lf ,i+1,xi);printf( );/ 平方根法void pfg(double *a,double *b,int n)int i,k,m;double x8,y8,temp;for(k=0;kn;k+)temp=0;for(m=0;mk;m+)temp=temp+pow(akm,2);if(akktemp)return;akk=pow(akk-temp),1.0/2.0);for(i=k+1;in;i+)temp=

4、0;for(m=0;mk;m+)temp=temp+aim*akm;aik=(aik-temp)/akk;temp=0;for(m=0;mk;m+)temp=temp+akm*ym;yk=(bk-temp)/akk;xn-1=yn-1/an-1n-1;for(k=n-2;k=0;k-)temp=0;for(m=k+1;mn;m+)temp=temp+amk*xm;xk=(yk-temp)/akk;for(i=0;in;i+)printf(x%d=%lf ,i+1,xi);printf( );/ 追趕法void zgf(double *a,double *b,int n)int i;double

5、a010,c10,d10,a110,b110,x10,y10;for(i=0;in;i+)a0i=aii;if(in-1)ci=aii+1;if(i0)di-1=aii-1;a10=a00;for(i=0;in-1;i+)b1i=ci/a1i;a1i+1=a0i+1-di+1*b1i;y0=b0/a10;for(i=1;in;i+)yi=(bi-di*yi-1)/a1i;xn-1=yn-1;for(i=n-2;i=0;i-)xi=yi-b1i*xi+1;for(i=0;in;i+)printf(x%d=%lf ,i+1,xi);printf( );int mainint n,i,j;doubl

6、e *A,*B,*C,*B1,*B2,*B3;A=(double *)malloc(n*sizeof(double); B=(double *)malloc(n*sizeof(double);C=(double *)malloc(n*sizeof(double);B1=(double *)malloc(n*sizeof(double);B2=(double *)malloc(n*sizeof(double);B3=(double *)malloc(n*sizeof(double);for(i=0;in;i+)Ai=(double*)malloc(n)*sizeof(double);Bi=(double*)malloc(n)*sizeof(double);Ci=(double *)malloc(n)*sizeof(double); cout 第一題 (Gauss

溫馨提示

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

評論

0/150

提交評論