欢迎来到天天文库
浏览记录
ID:9938410
大小:162.00 KB
页数:11页
时间:2018-05-16
《数值计算方法课程设计(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--){pri
2、ntf("pleaseinputthevalueofa%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
3、,b)做初等行变换使原方程组的第一列元素除了第一行的全变为0;第二步消元——在增广矩阵(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
4、[i][j]x[j])/a[i][i],i=n-1,…,2,1程序清单:#include#include#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、x][k])6、[N-1]/A[N-1][N-1];for(i=N-2;i>=0;i--){doubleTemp=0;for(intj=i+1;j7、法题目用二分法和Newton迭代法求下列方程的正根:要求结果的误差限为1.二分法算法语言:C语言算法思路:算法思路先给定区间[a,b],要求f(a)与f(b)是异号,保证区间内与x轴有交点,求x=(a+b)/2,求f(x),检查f(x)与f(a)是否同号,如果是同号,把x当成新的a,否则把x当成新的b,得到新的区间,重复求a和b的中点的值,判断与f(a)是否同号,不断循环下去,直到达到精度为止。113)牛顿迭代法设计思想是对f(x0)某点求切线,与x轴交x1点后,把x1当成x0,再求出其相应新的f(x0),再对其求切线,找到8、与x轴的新交点,不断循环下去,直到达到精度为止。这种方法要求先对函数求一阶导数,然后再迭代:x1=x0-f(x0)/f‘(x0)程序清单:#include#include#definef(x)(x*log(sqrt(x*x-1)+x)-sqrt(x*x-1
5、x][k])6、[N-1]/A[N-1][N-1];for(i=N-2;i>=0;i--){doubleTemp=0;for(intj=i+1;j7、法题目用二分法和Newton迭代法求下列方程的正根:要求结果的误差限为1.二分法算法语言:C语言算法思路:算法思路先给定区间[a,b],要求f(a)与f(b)是异号,保证区间内与x轴有交点,求x=(a+b)/2,求f(x),检查f(x)与f(a)是否同号,如果是同号,把x当成新的a,否则把x当成新的b,得到新的区间,重复求a和b的中点的值,判断与f(a)是否同号,不断循环下去,直到达到精度为止。113)牛顿迭代法设计思想是对f(x0)某点求切线,与x轴交x1点后,把x1当成x0,再求出其相应新的f(x0),再对其求切线,找到8、与x轴的新交点,不断循环下去,直到达到精度为止。这种方法要求先对函数求一阶导数,然后再迭代:x1=x0-f(x0)/f‘(x0)程序清单:#include#include#definef(x)(x*log(sqrt(x*x-1)+x)-sqrt(x*x-1
6、[N-1]/A[N-1][N-1];for(i=N-2;i>=0;i--){doubleTemp=0;for(intj=i+1;j7、法题目用二分法和Newton迭代法求下列方程的正根:要求结果的误差限为1.二分法算法语言:C语言算法思路:算法思路先给定区间[a,b],要求f(a)与f(b)是异号,保证区间内与x轴有交点,求x=(a+b)/2,求f(x),检查f(x)与f(a)是否同号,如果是同号,把x当成新的a,否则把x当成新的b,得到新的区间,重复求a和b的中点的值,判断与f(a)是否同号,不断循环下去,直到达到精度为止。113)牛顿迭代法设计思想是对f(x0)某点求切线,与x轴交x1点后,把x1当成x0,再求出其相应新的f(x0),再对其求切线,找到8、与x轴的新交点,不断循环下去,直到达到精度为止。这种方法要求先对函数求一阶导数,然后再迭代:x1=x0-f(x0)/f‘(x0)程序清单:#include#include#definef(x)(x*log(sqrt(x*x-1)+x)-sqrt(x*x-1
7、法题目用二分法和Newton迭代法求下列方程的正根:要求结果的误差限为1.二分法算法语言:C语言算法思路:算法思路先给定区间[a,b],要求f(a)与f(b)是异号,保证区间内与x轴有交点,求x=(a+b)/2,求f(x),检查f(x)与f(a)是否同号,如果是同号,把x当成新的a,否则把x当成新的b,得到新的区间,重复求a和b的中点的值,判断与f(a)是否同号,不断循环下去,直到达到精度为止。113)牛顿迭代法设计思想是对f(x0)某点求切线,与x轴交x1点后,把x1当成x0,再求出其相应新的f(x0),再对其求切线,找到
8、与x轴的新交点,不断循环下去,直到达到精度为止。这种方法要求先对函数求一阶导数,然后再迭代:x1=x0-f(x0)/f‘(x0)程序清单:#include#include#definef(x)(x*log(sqrt(x*x-1)+x)-sqrt(x*x-1
此文档下载收益归作者所有