全文预览

数值计算课程设计-典型数值算法的C++语言程序设计

上传者:非学无以广才 |  格式:doc  |  页数:36 |  大小:0KB

文档介绍
j<m+1;j++)Р cin>>a[i][j];Р?}Р?for(i=0;i<m;i++)Р {?for(j=i;j<m;j++) Р?c=(fabs(a[j][i])>fabs(a[i][i]))?j:i; /*找列最大元素*/Р?for(n=0;n<m+1;n++) Р {s=a[i][n]; a[i][n]=a[c][n]; a[c][n]=s;} /*将列最大数防在对角线上*/Р?for(p=0;p<m+1;p++)Р?cout<<a[i][p]<<"\t";Р?cout<<endl;Р?for(k=i+1;k<m;k++) Р {?l[k][i]=a[k][i]/a[i][i];Р for(r=i;r<m+1;r++) /*化成三角阵*/Р a[k][r]=a[k][r]-l[k][i]*a[i][r]; }Р?}Р?x[m-1]=a[m-1][m]/a[m-1][m-1];Р?for(i=m-2;i>=0;i--)Р { d=0;Р for(j=i+1;j<m;j++)Р d=d+a[i][j]*x[j];Р x[i]=(a[i][m]-d)/a[i][i]; /*求解*/Р?}Р?cout<<"该方程组的解为:"<<endl;Р?for(i=0;i<m;i++)Р cout<<"x["<<i<<"]="<<x[i]<<"\t"; //system("pause"); Р?return 0; Р}Р2牛顿法解非线性方程组Р2.1算法说明Р设已知,第一步计算函数Р第二步计算雅可比矩阵Р第三步求线性方程组的解。第四步计算下一点重复以上过程。Р2.1算例:Р设有非线性方程组(课本137页例3.32)Р设初始值,用牛顿法计算。Р解:迭代3次后的近似解向量为[1.9068,0.311219];具体运行结果如图2-1,2-2,2-3所示。Р Р图2-1Р图2-2Р图2-1

收藏

分享

举报
下载此文档