freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

線性方程組ax=b的數(shù)值計(jì)算方法實(shí)驗(yàn)-資料下載頁(yè)

2025-01-06 21:08本頁(yè)面
  

【正文】 //生成二維數(shù)組 LU,用于存放 L矩陣及 U矩陣 LU=A。 for(i=0。i=N。i++) //將 A轉(zhuǎn)換為 LU { k=i+1。 while(LU[i][i]==0amp。amp。k=N) { b=LU[i]。 LU[i]=LU[k]。 LU[k]=b。 a=B[i]。 B[i]=B[k]。 B[k]=a。 k++。 } for(j=i+1。j=N。j++) { c=LU[j][i]/LU[i][i]。 for(k=i。k=N。k++) LU[j][k]=LU[j][k]c*LU[i][k]。 《數(shù)值方法》實(shí)驗(yàn)報(bào)告 27 LU[j][i]=c。 } } return LU。 //返回 LU矩陣的地址 } //此函數(shù)用于求解對(duì) 應(yīng) B的解 float *LUsave(float **LU,int n,int k,int N) { int i,j。 float *y=new float[N]。 float *x=new float[N]。 float *B=new float[N]。 for(i=0。i=N。i++) if(i==n) B[i]=1。 else B[i]=0。 for(i=0。i=N。i++) //計(jì)算中間矩陣 Y的值 { for(j=0。ji。j++) B[i]=B[i]y[j]*LU[i][j]。 y[i]=B[i]。 } for(i=N。i=0。i) //計(jì)算解 X的值 { for(j=N。ji。j) y[i]=y[i]x[j]*LU[i][j]。 x[i]=y[i]/LU[i][i]。 } return x。 } 3 includeiostream include using namespace std。 //定義用于儲(chǔ)存數(shù)組的類(lèi) struct typeA { 《數(shù)值方法》實(shí)驗(yàn)報(bào)告 28 double *A。 int b。 }。 //實(shí)驗(yàn)的主函數(shù) int main() { int N,n1,i。 double *save(typeA,typeA,int,int)。 cout請(qǐng)輸入矩陣的階數(shù) N: 。 //輸入矩陣的階數(shù) cinN。 double *X=new double [N1]。 //生成用于存放解的數(shù)組 X typeA A,B。 cout請(qǐng)輸入矩陣的每行最大元素?cái)?shù): 。 //存儲(chǔ)帶狀方程組的系數(shù) cinn1。 =new double [n1]。 cout請(qǐng)輸入首行元素的個(gè)數(shù): 。 cin。 cout請(qǐng)輸入系數(shù)元素的序列: 。 for(i=0。in1。i++) cin[i]。 cout請(qǐng)輸入的循環(huán)個(gè)數(shù)及序列 : 。 //存儲(chǔ)帶狀方程組的值 cin。 =new double[]。 for(i=0。i。i++) cin[i]。 X=save(A,B,N,n1)。 //求解方程組 cout方程組的解為: endl。 for(i=0。iN。i++) //輸出方程的解 coutx[i+1]=X[i]endl。 system(pause)。 return 0。 } //用于計(jì)算方程組的解 double *save(typeA A,typeA B,int N,int n1) { int i,j,k,m,deltan。 double b。 deltan=int()。 double *X=new double [N1]。 //生成用于存儲(chǔ)方程組解的數(shù)組 X for(i=0。iN。i++) //初始化數(shù)組 X X[i]=0。 《數(shù)值方法》實(shí)驗(yàn)報(bào)告 29 double x。 double delta=1e6。 //定義計(jì)算精度 double deltax=1。 bool run=true。 //定于用于判定是否結(jié)束計(jì)算的變量 while(run) { if(deltaxdelta) //當(dāng)滿足精度時(shí)時(shí) run置假,為結(jié)束計(jì)算做準(zhǔn)備 run=false。 k=0。 x=X[N1]。 for(i=0。iN。i++) //使用高斯 — 賽德?tīng)柕?jì)算方程組的解 X { b=[k]。 m=0。 for(j=ideltan。ji。j++) { if(j=0) b=bX[j]*[m]。 m++。 } m++。 for(j=i+1。j=i+deltan。j++) { if(jN) b=bX[j]*[m]。 m++。 } X[i]=b/[deltan]。 k++。 if(k=) k=0。 } deltax=abs(X[N1]x)。 //計(jì)算兩次計(jì)算的相對(duì)誤差 } return X。 } 4 includeiostream 《數(shù)值方法》實(shí)驗(yàn)報(bào)告 30 include using namespace std。 //定義用于儲(chǔ)存數(shù)組的類(lèi) struct typeA { double *A。 int b。 }。 //實(shí)驗(yàn)的主函數(shù) int main() { int N,n1,i。 double *save(typeA,typeA,int,int)。 cout請(qǐng)輸入矩陣的階數(shù) N: 。 //輸入矩陣的階數(shù) cinN。 double *X=new double [N1]。 //生成用于存放解的數(shù)組 X typeA A,B。 cout請(qǐng)輸入矩陣的每行最大元素?cái)?shù): 。 //存儲(chǔ)帶狀方程組的系數(shù) cinn1。 =new double [n1]。 cout請(qǐng)輸入首行元素的個(gè)數(shù): 。 cin。 cout請(qǐng)輸入系數(shù)元素的序列: 。 for(i=0。in1。i++) cin[i]。 cout請(qǐng)輸入的循環(huán)個(gè)數(shù)及序列 : 。 //存儲(chǔ)帶狀方程組的值 cin。 =new double[]。 for(i=0。i。i++) cin[i]。 X=save(A,B,N,n1)。 //求解方程組 cout方程組的解為: endl。 for(i=0。iN。i++) //輸出方程的解 coutx[i+1]=X[i]endl。 system(pause)。 return 0。 } //用于計(jì)算方程組的解 double *save(typeA A,typeA B,int N,int n1) { int i,j,k,m,deltan。 《數(shù)值方法》實(shí)驗(yàn)報(bào)告 31 double b。 deltan=int()。 double *X=new double [N1]。 //生成用于存儲(chǔ)方程組解的數(shù)組 X for(i=0。iN。i++) //初始化數(shù)組 X X[i]=0。 double x。 double delta=1e6。 //定義 計(jì)算精度 double deltax=1。 bool run=true。 //定于用于判定是否結(jié)束計(jì)算的變量 while(run) { if(deltaxdelta) //當(dāng)滿足精度時(shí)時(shí) run置假,為結(jié)束計(jì)算做準(zhǔn)備 run=false。 k=0。 x=X[N1]。 for(i=0。iN。i++) //使用高斯 — 賽德?tīng)柕?jì)算方程組的解 X { b=[k]。 m=0。 for(j=ideltan。ji。j++) { if(j=0) b=bX[j]*[m]。 m++。 } m++。 for(j=i+1。j=i+deltan。j++) { if(jN) b=bX[j]*[m]。 m++。 } X[i]=b/[deltan]。 k++。 if(k=) k=0。 } deltax=abs(X[N1]x)。 //計(jì)算兩次計(jì)算的相對(duì)誤差 } return X。 《數(shù)值方法》實(shí)驗(yàn)報(bào)告 32 }
點(diǎn)擊復(fù)制文檔內(nèi)容
公司管理相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1