| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 259 人关注过本帖
标题:牛顿迭代法求得的值代入方程不为0,哪里错了?
只看楼主 加入收藏
Qiwan
Rank: 2
来 自:河南
等 级:论坛游民
帖 子:48
专家分:28
注 册:2011-5-15
结帖率:100%
收藏
已结贴  问题点数:20 回复次数:2 
牛顿迭代法求得的值代入方程不为0,哪里错了?
#include<stdio.h>
#include<math.h>
void main()
{double f(double x);
 double f1(double x);
 double eps,x0,x1=1;
 printf("请输入要求的精度:");
 scanf("%lf",&eps);
 do
 {x0=x1;
  x1=x0-f(x0)/f1(x0);
 }while(fabs(x1-x0>eps));
 printf("所求的根为:%lf\n",x1);
 
}
double f(double x)
{double y;
 y=x*x+2*x+1;
 return y;}
double f1(double x)
{double y;
 y=2*x+2;
 return y;}
搜索更多相关主题的帖子: double include return 
2012-12-26 16:51
w527705090
Rank: 10Rank: 10Rank: 10
等 级:贵宾
威 望:11
帖 子:441
专家分:1882
注 册:2011-6-28
收藏
得分:20 
你那个fabs(x1-x0)〉eps   你写错了

有心者,千方百计;无心者,千难万难。
2012-12-26 18:34
Qiwan
Rank: 2
来 自:河南
等 级:论坛游民
帖 子:48
专家分:28
注 册:2011-5-15
收藏
得分:0 
回复 2楼 w527705090
我晕,,犯了这么个错误,谢谢你呀,,还有一个问题,如果原方程改成x*x-2*x+1,再求根时用x1和x0输出的结果相差太大了,一个是x0输出1,x1输出-1.#IND00这是怎么回事呀?求解
2012-12-26 23:47
快速回复:牛顿迭代法求得的值代入方程不为0,哪里错了?
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.020627 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved