1、(3)按两种顺序分别计算并指出有效位数三、实验步骤、程序设计、实验结果及分析(1)实验步骤:分别从110000和从100001两种顺序进行计算,应包含的头文件有stdio.h和math.h(2)程序设计:a.顺序计算#includemath.hvoid main() double sum=0; int n=1; while(1) sum=sum+(1/pow(n,2); if(n%1000=0)printf(sun%d=%-30f,n,sum); if(n=10000)break; n+; printf(sum%d=%fnb.逆序计算 int n=10000; if(n%1000=0)sum%
2、d=%-30f if(n=1)break; n-; (3)实验结果及分析:程序运行结果:结果分析:两种不同顺序计算结果是一样的,顺序计算误差从一开始就很小,而逆序计算误差最开始十分大,后来结果正确。,计算利用 ,(2)程序设计 int i=0,n; float a1024,b1024,d1024;please input n,n=); scanf(%d,&n);nplease input a1 to an:n for(i=1;i=0;i-) di=bi+ai+1/di+1;nf=%fn,d0);(3)实验结果(1)实验步骤利用C语言编写程序,分别使用数值稳定的和数值不稳定的计算公式所建立的递推
3、公式进行计算。main() double y_0=(1/4.0)*log(5),y_1; double y_2=(1.0/55.0+1.0/11.0)/2,y_3; int n=1,m=10;有效算法输出结果:y0=%-20f,y_0); y_1=1.0/(4*n)+y_0/(-4.0);y%d=%-20f,n,y_1); if(n=10) break; y_0=y_1; if(n%3=0) printf(n无效算法的输出结果:y10=%-20f,y_2); y_3=1.0/n-4.0*y_2;,m-1,y_3); if(m=2;N-) SNN-1=SNN-1.0/(N*N-1);从大到小顺序
4、计算:nSN1000=%fnSN10000=%fnSN30000=%fn,SN1000,SN10000,SN30000); SN2=(3.0/2-1.0/2.0-1/3.0)/2.0; for(N=3;N=30000;N+) SNN=SNN-1+1.0/(N*N-1);从小到大顺序计算:不同顺序计算所得结果是一样的。四、总结通过这次上机,学习了解了舍入误差在不同算法时对结果的影响不同,稳定的算法才能获得正确的结果。2 方程求根(1)通过对二分法与牛顿迭代法做编程练习和上机运算,进一步体会二分法和牛顿法的不同。(2)编写割线迭代法的程序,求非线性方程的解,并与牛顿迭代法作比较。1、用牛顿法求下列
5、方程的根(1)(2)(3)2、编写割线法程序求解第一问的方程1、牛顿法通过定义牛顿法求方程的子函数,用main函数调用子函数求根#include typedef float (*p)(float );float ff1(float x) return x*x-exp(x);float ff2(float x) return x*exp(x)-1;float ff3(float x) return log(x)+x-2;float answer(float(*p)(float) int k=2; float m=1,n=-1,x2,a,b,c; if (p=ff3)n=2;x0 = %.4f,
6、x1 = %.4f, ,m,n); while (1) if (fabs(m-n)1e-4) break; a=p(n)*(n-m); b=p(n)-p(m); c=a/b; x2=n-c; m = n; n = x2;x%d = %.4f, ,k,x2); k+; if (k%3=0) printf( if (k%3!=0) printf(iteration times: %d, roots: %.4fn ,k-2,n); return 0; main()x*x-exp(x),n answer(ff1);x*exp(x)-1,n answer(ff2);lg(x)+x-2,n answer(ff3);2、割线法(1)程序设计float gexian(float,float);float f(float); int i,j; float x1=2.2; float x2=2,x3;i); if(i=1) printf(,x1); else if(i=2) printf(,x2); else for(j=3;j(fabs(*(c+k*(n+1)+i) k=j; if(k!=i) for(j=i; p=
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1