欢迎来到天天文库
浏览记录
ID:25625854
大小:170.05 KB
页数:11页
时间:2018-11-21
《数值计算方法课程设计(c语言)》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库。
1、数值计算方法课程设计姓名学号成绩11课程实际报告实验一:秦九韶算法题目用选列主元高斯消去法解线性方程组算法语言:利用c语言的知识编写该算法程序算法步骤叙述:秦九昭算法的基思路是v[0]=a[0]*x+a[1]v[i]=v[i-1]*x+a[i+1];利用秦九昭算法计算多项式函数。程序清单:#includevoidmain(){floata[5],x,sum;inti;printf("presaseinputthevalueofx=");scanf("%f",&x);for(i=5;i>=0;i--){printf("pleaseinputtheva
2、lueofa%d=",i);scanf("%f",&a[i]);}sum=a[5];11for(i=5;i>=1;i--){sum=sum*x+a[i-1];}printf("f(x)=%f/n",sum);}输出结果计算:11实验总结:通过运用C语言,解决了秦九韶算法手写的复杂。为以后的雪地打下基础。实验二:用选列主元高斯消去法解线性方程组题目用选列主元高斯消去法解线性方程组算法步骤叙述第一步消元——在增广矩阵(A,b)第一列中找到绝对值最大的元素,将其所在行与第一行交换,再对(A,b)做初等行变换使原方程组的第一列元素除了第一行的全变为0;第二步消元——在增广矩
3、阵(A,b)中第二列中(从第二行开始)找到绝对值最大的元素,将其所在行与第二行交换,再对(A,b)做初等行变换使原方程组的第二列元素除了第一和第二行的全变为0;第三步消元——在增广矩阵(A,b)中第三列中(从第三行开始)找到绝对值最大的元素,将其所在行与第三行交换,再对(A,b)做初等行变换使原方程组的第三列第四行元素为0;第四,按x4-x3-x2-x1的顺序回代求解出方程组的解,x[n]=b[n]/a[n][n],x[i]=(b[i]-Σa[i][j]x[j])/a[i][i],i=n-1,…,2,1程序清单:#include#include<
4、math>#defineN4staticdoubleA[N][N]={-3,-1,0,0,-1,2,-1,0,0,-1,2,-1,0,0,-1,2};11staticdoubleB[N]={1,0,0,0};staticdoubleX[N];inti,j,k;voidmain(){for(k=0;k5、][i]=A[k][i];A[k][i]=temp;}temp=B[index];B[index]=B[k];B[k]=temp;for(i=k+1;i=0;i--){doubleTemp=0;for(intj=i+1;j6、i]-Temp)/A[i][i];}cout<<"线性方程组的解(X1,X2,X3......Xn)为:"<7、号,如果是同号,把x当成新的a,否则把x当成新的b,得到新的区间,重复求a和b的中点的值,判断与f(a)是否同号,不断循环下去,直到达到精度为止。113)牛顿迭代法设计思想是对f(x0)某点求切线,与x轴交x1点后,把x1当成x0,再求出其相应新的f(x0),再对其求切线,找到与x轴的新交点,不断循环下去,直到达到精度为止。这种方法要求先对函数求一阶导数,然后再迭代:x1=x0-f(x0)/f‘(x0)程序清单:#include#include#definef(x)(x*log(sqrt(x*x-1)+x)-sqrt(x*x-1
5、][i]=A[k][i];A[k][i]=temp;}temp=B[index];B[index]=B[k];B[k]=temp;for(i=k+1;i=0;i--){doubleTemp=0;for(intj=i+1;j6、i]-Temp)/A[i][i];}cout<<"线性方程组的解(X1,X2,X3......Xn)为:"<7、号,如果是同号,把x当成新的a,否则把x当成新的b,得到新的区间,重复求a和b的中点的值,判断与f(a)是否同号,不断循环下去,直到达到精度为止。113)牛顿迭代法设计思想是对f(x0)某点求切线,与x轴交x1点后,把x1当成x0,再求出其相应新的f(x0),再对其求切线,找到与x轴的新交点,不断循环下去,直到达到精度为止。这种方法要求先对函数求一阶导数,然后再迭代:x1=x0-f(x0)/f‘(x0)程序清单:#include#include#definef(x)(x*log(sqrt(x*x-1)+x)-sqrt(x*x-1
6、i]-Temp)/A[i][i];}cout<<"线性方程组的解(X1,X2,X3......Xn)为:"<7、号,如果是同号,把x当成新的a,否则把x当成新的b,得到新的区间,重复求a和b的中点的值,判断与f(a)是否同号,不断循环下去,直到达到精度为止。113)牛顿迭代法设计思想是对f(x0)某点求切线,与x轴交x1点后,把x1当成x0,再求出其相应新的f(x0),再对其求切线,找到与x轴的新交点,不断循环下去,直到达到精度为止。这种方法要求先对函数求一阶导数,然后再迭代:x1=x0-f(x0)/f‘(x0)程序清单:#include#include#definef(x)(x*log(sqrt(x*x-1)+x)-sqrt(x*x-1
7、号,如果是同号,把x当成新的a,否则把x当成新的b,得到新的区间,重复求a和b的中点的值,判断与f(a)是否同号,不断循环下去,直到达到精度为止。113)牛顿迭代法设计思想是对f(x0)某点求切线,与x轴交x1点后,把x1当成x0,再求出其相应新的f(x0),再对其求切线,找到与x轴的新交点,不断循环下去,直到达到精度为止。这种方法要求先对函数求一阶导数,然后再迭代:x1=x0-f(x0)/f‘(x0)程序清单:#include#include#definef(x)(x*log(sqrt(x*x-1)+x)-sqrt(x*x-1
此文档下载收益归作者所有