日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程语言 > c/c++ >内容正文

c/c++

脉络最清晰的C++高斯消元程序

發(fā)布時間:2025/4/16 c/c++ 24 豆豆
生活随笔 收集整理的這篇文章主要介紹了 脉络最清晰的C++高斯消元程序 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
#include<iostream> #include<math.h> using namespace std; const int N=3; void print(double a[][N],int n);//輸出程序 int max_absAKK(double b[][N],int n,int kk);//尋找列中的最大元素所在的行 函數(shù) void ExchangCol(double c[][N],int p, int q,int n);//換行 函數(shù) int main() {double A[N][N]={{0.001,2.000,3.000},{-1.0,3.712,4.623},{-2.0,1.072,5.643}};double m[N][N];for(int k=0;k<N-1;k++){int t=max_absAKK(A,N,k);//找到每一列絕對值最大的行if (t!=k) ExchangCol(A,t,k,N);//如果對角線的元素不是最大,進行換行for(int i=k+1;i<N;i++){m[i][k]=A[i][k]/A[k][k];for(int j=k+1;j<N;j++){A[i][j]=A[i][j]-m[i][k]*A[k][j];}} }print (A,N);}void ExchangCol(double c[][N],int p, int q,int n) {for(int i=0;i<n;i++)swap(c[p][i],c[q][i]); } int max_absAKK(double b[][N],int n,int kk) {double max=0.0;int maxCol=0;for(int i=0;i<n-kk;i++) { if(fabs(max)<fabs(b[kk+i][kk])) {max=b[kk+i][kk];maxCol=kk+i; }} return maxCol; }void print(double a[][N],int n) {for (int i=0;i<n;i++){for(int j=0;j<n;j++){if(fabs(a[i][j])<1.0e-5)a[i][j]=0.0;cout<<a[i][j]<<'\t';} cout<<endl; } }

總結(jié)

以上是生活随笔為你收集整理的脉络最清晰的C++高斯消元程序的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。