浙江工业大学数值计算方法实验2_第1页
浙江工业大学数值计算方法实验2_第2页
浙江工业大学数值计算方法实验2_第3页
浙江工业大学数值计算方法实验2_第4页
浙江工业大学数值计算方法实验2_第5页
已阅读5页,还剩1页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

实验报告一、实验目的用下列方法解线性方程1.1348 3.8326 1.16513.4017产1]9.5342'0.5301 1.7875 2.53301.5435X26.39413.41294.9317 8.76431.3142兀318.4231L1.23714.9998 10.67210.0147J民4」L16.9237J并比较计算结果精度⑴顺序消元法(2)列主元消元法二、实验方法(要求用自己的语言描述算法)•顺序消元法本代码中是将题中矩阵转化为上三角矩阵,具体流程如下:通过双重for循环【外层for循环控制作为基准的行数,内层循环计算与基准行的倍数,并且进行行相减操作(行相减的for循环不考虑在内)】,最后通过回代求解出所有的解。•列主元消元法本代码中在将矩阵转化为上三角矩阵的同时,事先需进行,预处理操作如下(化为上三角矩阵过程同顺序消元法):在每次操作时先找出列中绝对值最大的元素,并与基准行先进行交换。三、实验代码#include<iostream>#include<iomanip>#include<fstreaa>usingnamespacestd;voiddisplay(double**a,double*b,intN);intmainO{//ifstreancinC"input・txt");//ofstreancoutoutputintN; 〃方程的阶doublemax,p;inti,j,k,1;cout«"请输入方程的阶(输入0退fli):while(cin»N&&N){double**a=newdouble*[N],*b=newdouble[N];double**c=newdouble*[N],*d=newdouble[N];double**n=newdouble*[N],*x=newdouble[N];for(i=0;i<N;i卄){a[i]=newdouble[N];c[i]=newdouble[N];jn[i]=newdouble[N];}cout«"请输入数组A:endl;for(i=0;i<N:i卄)for(j=0;j<N;j++){cin»a[i][j];c[i][j]=a[i][j];}cout«"请输入数组B:endl;for(i=0;i<N;i卄){cin»b[i];d[i]=b[i];}〃消元计算,将方程组约化为三角形方程组for(k=0;k<=N;k++)for(i=k+1;i<N;i++){m[i][k]=a[i][k]/a[k][kJ;cout«Bi[i][k]«endl;for(j=k;j<N;j++)a[i][j]-=ni[i][k]*a[k][j];

b[i]一二>[i][k]*b[kl;display(a,b,N);〃回代求解doublet=0.0;x[N-1]=b[N-1]/a[N-1][N-1];for(i=N-2;i>=0;i—){x[i]=b[i];for(j=i+l;j<N;j++)x[i]一二a[i][j]*x[j];x[i]/=a[i][i];}〃输出方程组的解cout«"方程的解为:"《endl;for(i=0;i<N:i++)cout i+1<]="<〈x[i]«endl;cout«cout«endl// 分割线•cout«cout«endl;for(k=0;k<N-1;k++){max=c[k][k];for(i=k+1;i<N;i++) //for(i=k+1;i<N;i++) //选取主元if(fabs(c[i][k])>fabs(max)){max=c[i][k];1=i;}if(fabs(max)*100000<1)cout«^detA=0*«endl;else{if(11=k){ //交换行p=d[l];d[l]=d[k];d[k]=p;for(j=0;j<N;j++){p=c[l][j];c[l][j]=c[k][j];c[k][j]=p;}display(c,d,N);}for(i=k+1;i<N;i卄){ //消元,化为三角方程组=c[i][k]/c[k][kJ;for(j=k;j<N:j++)c[i][j]-=m[i][k]*c[k][j];

d[i]-=m[i][k]*d[k];}display(c,d,N);}}if(fabs(c[N-1][N-1])*100000<1)cout«^detA=0<z«endl;else{〃回代求解x[N-1]=d[N-1]/c[N-1][N-1];for(i=N-2;i>=0;i—){x[i]=d[i];for(j=i+l;j<N;j++)x[i]-=c[i][j]*x[j];x[i]/=c[i][i];}}〃输出方程组的解cout«"方程的解依次为"<<endl;for(i=0;i<N;i++)cout i+1<〈"]="<〈x[i]«endl;free(a);free(b);free(c);free(d);free(m);free(x);}}voiddisplay(double**a,double*b,intN){for(inti=0;i<N;i++){for(intj=0;j<N;j++)cout«set曹(15)«a[i][j];cout«setw(5)<C|^«b[i]«endl;}cout«endl;

四、实验结果及其讨论本题中输入部分同过文件流读入,实验结果见图1与图2oC:\WINDOWS\system32\cmd.exe「o1「回心10・4671311.13483.83261.16513.4017!9.53420-0.00282541.98875-0.045538?!1・940383.41294.93178.76431.3142!18・42311.23714.999810.67210・0147!16.92373.0074913483.83261.16S13.4R17!9.53420-0.00282541.98875-0.045538?!1・940380-6.594815.26027-8.91638!-10.25091.23714.999810.67210・0147!16.92371.R9R151.13483.83261.16513.4017!9.53420-0.00282541.98875-0.045538?!1・940380-6.594815.26027-8.91638!-10.2509-2.22045e-160.8216999.4019?-3.69366!6.530012334.121.13483.83261.16513.4017!9.53420-0.00282541.98875-0.045538?!1・9403800-4636.7197.3764!-4539.33一2・2204£&一160.8216999.4R197一?.69266!6.52001-290.8261.13483.83261.16513.4017!9.53420-0.00282541.98875-0.045538?!1・9403800一4636・亢97.3764!-4539.33-2.22045e-16-1.11022e-1658?・?81-16.9375!570.843-0.1267671.13483.83261.16513.4017!9.53420一0・00282541.98875一Q・0455387!丄・9403800-4636.7197.3764!-4539.33-2.22045e-16-1.11022e-16-1.1368?e-13-4.5934!-4.5934方程的解为:x[2]=lx[3]=lx[4]=l图1C:\WINDOWS\system32\cmd.exe |且||旦||旦|3.41294.93178.76431.3142!18・42310.53011・78752.5331.5435!6.39411.13483・83261.16513・401719.53421.23714.999810.67210・0147!16.92373.41294.93178.76431.3142!18・423101.02151.171711.33938!3.5325802.19279-1.749062.96472!3.4084603.212177.49524-0.461668!10・24573.41294.93178.76431.3142!18・423103.212177.49524-0.461668!10・245702.19279-1.749062.96472!3.4084600215丄・171711.33938!3.532583.41294.93178.76431.3142!18・423103.212177.49524-0.461668!10・245700-6.86573.27988!-3.5858100-1.211841.48619!0・274353.41294.93178.76431.3142!18・423103.212177.49524-0.461668!10・245700-6.86573.27988!-3.5858100

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论