欢迎来到天天文库
浏览记录
ID:39577549
大小:188.00 KB
页数:10页
时间:2019-07-06
《数值分析实验报告一》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、数值分析课程实验报告实验名称数值计算的基本概念班级动力实1201姓名李凯学号201202000511序号教师赵美玲地点数学实验中心评分一、实验目的(1)、了解计算机中浮点数的有效数字;(2)、了解舍入误差产生的原因,知道截断误差和舍入误差的区别;(3)、了解算法“稳定性”的概念。二、用文字或图表记录实验过程和结果1、关于浮点数(1)令在计算机中分别将它们定义成单精度型和双精度型,输出观察结果,并对结果进行分析。#include#includevoidmain(){floatff;doubledf;ff=
2、0.1234567890123456789;df=0.1234567890123456789;cout<3、到a1上;方法二:先将100个a3相加,再加到a1上;观察所得到的结果,写出你得到的结论。9解:#includevoidmain(){floata1,a2,a3,y1,y2;inti;a1=1.000001;a2=1.000000;a3=0.0000001;y1=a1;y2=0;for(i=1;i<=100;i++){y1=y1+a3;}for(i=1;i<=100;i++){y2=y2+a3;}y2=y2+a1;cout<<"方法一:"<4、度有效位数是7位,所以两种算法所得结果一样。2)计算,观察结果,并分析原因。3)计算a1-a2,观察有效数字的位数,从中你可以得到什么启示?解:#includevoidmain(){floata1,a2,a3;a1=1.000001;a2=1.000000;a3=0.0000001;floata,b;a=a1/a3+a2;b=a1-a2;cout<5、2)取,分别用(1)、(2)计算f(x)在处的一阶导数的近似值,令h依次取值,观察所得结果并与精确值进行比较,结合本例叙述你对于截断误差和舍入误差的认识。方法一:#includefloatf(floatx){floata;a=x*x*x;returna;}voidmain(){floath=1,b,f1,f2;inti;for(i=1;i<=15;i++){f1=f(1+h);f2=f(1);b=(f1-f2)/h;h=h/10;cout<<"h="<6、ncludefloatf(floatx){floata;a=x*x*x;returna;}voidmain(){floath=1,b,f1,f2;inti;for(i=1;i<=15;i++){f1=f(1+h);f2=f(1-h);b=(f1-f2)/(2*h);h=h/10;cout<<"h="<7、是有影响的。3、算法的稳定性考虑积分易见,,且计算得到,从而可得如下递推算法:(1)对上述积分有估计式,我们取,可得另一个递推算法:(2)(已知)分析算法(1)和(2),哪一个算法稳定,并编程验证你的结论!解:算法(2)稳定。9方法一:#includevoidmain(){inti;floata=0.1823;cout<<"I0="<v8、oidmain(){inti;floata[100];a[100]=0.001815;for(i=100;i>=0;i--
3、到a1上;方法二:先将100个a3相加,再加到a1上;观察所得到的结果,写出你得到的结论。9解:#includevoidmain(){floata1,a2,a3,y1,y2;inti;a1=1.000001;a2=1.000000;a3=0.0000001;y1=a1;y2=0;for(i=1;i<=100;i++){y1=y1+a3;}for(i=1;i<=100;i++){y2=y2+a3;}y2=y2+a1;cout<<"方法一:"<4、度有效位数是7位,所以两种算法所得结果一样。2)计算,观察结果,并分析原因。3)计算a1-a2,观察有效数字的位数,从中你可以得到什么启示?解:#includevoidmain(){floata1,a2,a3;a1=1.000001;a2=1.000000;a3=0.0000001;floata,b;a=a1/a3+a2;b=a1-a2;cout<5、2)取,分别用(1)、(2)计算f(x)在处的一阶导数的近似值,令h依次取值,观察所得结果并与精确值进行比较,结合本例叙述你对于截断误差和舍入误差的认识。方法一:#includefloatf(floatx){floata;a=x*x*x;returna;}voidmain(){floath=1,b,f1,f2;inti;for(i=1;i<=15;i++){f1=f(1+h);f2=f(1);b=(f1-f2)/h;h=h/10;cout<<"h="<6、ncludefloatf(floatx){floata;a=x*x*x;returna;}voidmain(){floath=1,b,f1,f2;inti;for(i=1;i<=15;i++){f1=f(1+h);f2=f(1-h);b=(f1-f2)/(2*h);h=h/10;cout<<"h="<7、是有影响的。3、算法的稳定性考虑积分易见,,且计算得到,从而可得如下递推算法:(1)对上述积分有估计式,我们取,可得另一个递推算法:(2)(已知)分析算法(1)和(2),哪一个算法稳定,并编程验证你的结论!解:算法(2)稳定。9方法一:#includevoidmain(){inti;floata=0.1823;cout<<"I0="<v8、oidmain(){inti;floata[100];a[100]=0.001815;for(i=100;i>=0;i--
4、度有效位数是7位,所以两种算法所得结果一样。2)计算,观察结果,并分析原因。3)计算a1-a2,观察有效数字的位数,从中你可以得到什么启示?解:#includevoidmain(){floata1,a2,a3;a1=1.000001;a2=1.000000;a3=0.0000001;floata,b;a=a1/a3+a2;b=a1-a2;cout<5、2)取,分别用(1)、(2)计算f(x)在处的一阶导数的近似值,令h依次取值,观察所得结果并与精确值进行比较,结合本例叙述你对于截断误差和舍入误差的认识。方法一:#includefloatf(floatx){floata;a=x*x*x;returna;}voidmain(){floath=1,b,f1,f2;inti;for(i=1;i<=15;i++){f1=f(1+h);f2=f(1);b=(f1-f2)/h;h=h/10;cout<<"h="<6、ncludefloatf(floatx){floata;a=x*x*x;returna;}voidmain(){floath=1,b,f1,f2;inti;for(i=1;i<=15;i++){f1=f(1+h);f2=f(1-h);b=(f1-f2)/(2*h);h=h/10;cout<<"h="<7、是有影响的。3、算法的稳定性考虑积分易见,,且计算得到,从而可得如下递推算法:(1)对上述积分有估计式,我们取,可得另一个递推算法:(2)(已知)分析算法(1)和(2),哪一个算法稳定,并编程验证你的结论!解:算法(2)稳定。9方法一:#includevoidmain(){inti;floata=0.1823;cout<<"I0="<v8、oidmain(){inti;floata[100];a[100]=0.001815;for(i=100;i>=0;i--
5、2)取,分别用(1)、(2)计算f(x)在处的一阶导数的近似值,令h依次取值,观察所得结果并与精确值进行比较,结合本例叙述你对于截断误差和舍入误差的认识。方法一:#includefloatf(floatx){floata;a=x*x*x;returna;}voidmain(){floath=1,b,f1,f2;inti;for(i=1;i<=15;i++){f1=f(1+h);f2=f(1);b=(f1-f2)/h;h=h/10;cout<<"h="<6、ncludefloatf(floatx){floata;a=x*x*x;returna;}voidmain(){floath=1,b,f1,f2;inti;for(i=1;i<=15;i++){f1=f(1+h);f2=f(1-h);b=(f1-f2)/(2*h);h=h/10;cout<<"h="<7、是有影响的。3、算法的稳定性考虑积分易见,,且计算得到,从而可得如下递推算法:(1)对上述积分有估计式,我们取,可得另一个递推算法:(2)(已知)分析算法(1)和(2),哪一个算法稳定,并编程验证你的结论!解:算法(2)稳定。9方法一:#includevoidmain(){inti;floata=0.1823;cout<<"I0="<v8、oidmain(){inti;floata[100];a[100]=0.001815;for(i=100;i>=0;i--
6、ncludefloatf(floatx){floata;a=x*x*x;returna;}voidmain(){floath=1,b,f1,f2;inti;for(i=1;i<=15;i++){f1=f(1+h);f2=f(1-h);b=(f1-f2)/(2*h);h=h/10;cout<<"h="<7、是有影响的。3、算法的稳定性考虑积分易见,,且计算得到,从而可得如下递推算法:(1)对上述积分有估计式,我们取,可得另一个递推算法:(2)(已知)分析算法(1)和(2),哪一个算法稳定,并编程验证你的结论!解:算法(2)稳定。9方法一:#includevoidmain(){inti;floata=0.1823;cout<<"I0="<v8、oidmain(){inti;floata[100];a[100]=0.001815;for(i=100;i>=0;i--
7、是有影响的。3、算法的稳定性考虑积分易见,,且计算得到,从而可得如下递推算法:(1)对上述积分有估计式,我们取,可得另一个递推算法:(2)(已知)分析算法(1)和(2),哪一个算法稳定,并编程验证你的结论!解:算法(2)稳定。9方法一:#includevoidmain(){inti;floata=0.1823;cout<<"I0="<v
8、oidmain(){inti;floata[100];a[100]=0.001815;for(i=100;i>=0;i--
此文档下载收益归作者所有