计算方法与实习的实验报告.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
1舍入误差与数值稳定性 1.1目的与要求 通过上机编程,复习巩固以前所学程序设计语言及上机操作指令; 通过上机计算,了解舍入误差所引起的数值不稳定性。 1.2舍入误差和数值稳定性 121概要 舍入课差在计算方法屮是一个很重要的概念。在实际计算屮如果选用了不同的算法,由 于舍入误差的影响,将会得到截然不同的结果。因此,选取稳定的算法在实际计算小是十分 重要的。 122程序和实例 对n=0,l,2, 对n=0,l,2,…,40计算定积分 ox + 5 算法利用递推公式取 算法利用递推公式 取yO二f丄必 叽+ 5 yn=——5y n (n二 1,2,…,40 ) n In6-ln5? 0.182322o 程序如下: #includestdio.h #includcmath.h void main() double y_0=log(6.0/5.0),y_l; int n=l; printf(,,y[0]=%-20f,,y_0); while(l) y_l = 1.0/n-5*y_0; printf(,,yr%d]=%-20f,n,y_l); if(n=40)brcak; y_0=y_l; n++; if(n%2==0)printf(,,\n,); [cl *C: \DocuMents and Settings\AdMinistrator\桌面\Debug\舍入误差和数值稳定性?■? y[0]=0.182322 y[l]=0.088392 ▲ y[2J=0.058039 y[3]=0.043139 y[4J=0.034306 y[5]=0.028468 y[6]=0.024325 y[?]=0.021233 y[8]=0.018837 y[9J-0.016926 y[10]=0.015368 y [113=0.014071 y[12]=0.012977 y[13]=0.012040 y[14]=0.011229 y[15J=0.010522 y[16]=0.009890 y[17]=0.009372 y[18]=0.008696 y[19]=0.009151 y[203=0.004243 y[213=0.026406 y[22 3—0.086575 y[23]=0.476352 y [243—2.340094 y[253=11.740469 y[26 -58.663883 y[27J=293.356454 y[28 3—1466.746558 y[293=7333.767272 y [302-36668.803026 y[313=183344.047389 y[32 3—916720.205694 y[333=4583601.058771 y [342264446 y[353=114590026.350799 y[36 3—572950131.726219 y[371=2864750558.658124 y[38 3—14323753293.264303 y [39 3=71618766466.347153 y[40]a-358093832331.710750Press any key to continue. 2方程求根 2.1实验目的 通过对二分法与牛顿迭代法作编程练习与上级运算,进一步体会二分法与牛顿迭代 法的不同特点; 编写割线迭代法的程序,求非线性迭代法的解,并与牛顿迭代法作比较。 2.2二分法 2.2.1算法 给定区间[a,b],并设f(a)与f(b)符号相反,取s为根的容许误差,§为|f(x)|的容许误差。 1 令 c=(a+b)/2; 2如果(c?a)v £或|f(x)|v 6,则输出c,结束;否则执行3; 3如果f(a)f(c)0,则令a=c;否则令b=c,重复1,2,3。 2.2.2程序与实例 求方程f(x)二x3+4x2-10 = 0在1.5附近的根。 程序如下: # includestdio.h #includemath.h #define eps 5e-6 #dcfinc delta 1c-6 float Bisection(float a,float b,float(*f)(float)) { float c,fc,fa=(*f)(a),fb=(*f)(b); int n=l; printf(n 二分次数 \t\tc\t\t f(c)\n); while(l) { if(fa*fb0) {printf(不能用二分法求解);break;J c=(a+b)/2,fc=(*f)(c); printf(%d\t\t%f\t\t%f\n,n++,c,fc); if(fabs(fc)delta)break; else if(fa*fc0){b=c;fb=fc;} else{a=c;fa=fc;}

文档评论(0)

ggkkppp + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档