Newton法、一般迭代法Steffensen法、弦截法C语言代码.doc

Newton法、一般迭代法Steffensen法、弦截法C语言代码.doc

  1. 1、本文档共3页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
Newton法、一般迭代法Steffensen法、弦截法C语言代码

一、#includemath.h #includestdio.h double f(double x) { return (3*x*x-exp(x)); } double f1(double x) { return (6*x-exp(x)); } void main() { double x1=1,x; do { x=x1; x1=x-f(x)/f1(x); printf(x=%.9lf\n,x1); }while(fabs(x1-x)0.000005); } 说明:f 原函数,f1f的导函数x1为初始值,通过x=%.9lf“控制输入输出格式 、#include stdio.h #include math.h int main() { double x=1,x1; while(1) { x1=pow(3*x+1,0.2); printf(x=%.6lf\n,x1); if(fabs(x1-x)0.000005 ) break; x=x1; } return 0; } 说明:x1初始值x1=pow(3*x+1,0.2);为迭代格式,0.000005误差通过x=%.6lf“控制输入输出格式 、#includestdio.h #includemath.h #define phi(x) pow(3*(x)+1,0.2); void main() { double x,x0,del,y,z; printf(x0=); scanf(%lf,x0); printf(\ndel=:); scanf(%lf,del); while(1) { y=phi(x0); z=phi(y); x=x0-(y-x0)*(y-x0)/(z-2*y+x0); printf(\n%.6lf,x); if(fabs(x-x0)del) break; x0=x; } } 说明:x0初始值,pow(3*(x)+1,0.2);φ(x)格式del为允许误差通过x=%.6lf“控制输入输出格式、#includemath.h #includestdio.h double f(double x) { //计算f(x)的值 return pow(2,x)+pow(3,x)-pow(4,x); } double point(double x1,double x2) { //计算与x轴交点的x值 printf(x=%.5f\n,(x1*f(x2)-x2*f(x1))/(f(x2)-f(x1))); return (x1*f(x2)-x2*f(x1))/(f(x2)-f(x1)); } int main() { //输入两个数x1,x2 double x1,x2,x; do { printf(输入两个数x1,x2:); scanf(%lf%lf,x1,x2); }while (f(x1)*f(x2)= 0); // 当输入两个数大于0为真时,继续重新输入 //关键循环步骤: do { x=point(x1,x2);//得到交点的值 if(f(x)*f(x1)0) x1=x;//新的x1 else x2=x; }while (fabs(f(x)) 0.000005); }

文档评论(0)

hhuiws1482 + 关注
实名认证
内容提供者

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

版权声明书
用户编号:5024214302000003

1亿VIP精品文档

相关文档