我可以: 邀请好友来看>>
ZOL星空(中国) > 技术星空(中国) > C/C++星空(中国) > 牛顿迭代求程x5-3x3+x-1= 0在区间[-8,8〕上的全部实根
帖子很冷清,卤煮很失落!求安慰
返回列表
签到
手机签到经验翻倍!
快来扫一扫!

牛顿迭代求程x5-3x3+x-1= 0在区间[-8,8〕上的全部实根

135浏览 / 0回复

wwylai

wwylai

0
精华
1
帖子

等  级:Lv.1
经  验:100
  • Z金豆: 0

    千万礼品等你来兑哦~快点击这里兑换吧~

  • 城  市:广东
  • 注  册:2010-05-10
  • 登  录:2010-05-10
发表于 2010-05-11 16:36:12
电梯直达 确定
楼主

以下是我所编的程序,主函数肯定有错了,但不会改。其它地方估计也有错,请高手帮我看看,教下我。谢谢!#include
#include
using namespace std;
#define EPS 1.0e-7   //精度

#define M 3          //根的个数,这要求在编程前
                     //对函数进行笔算上的分析
double fx(doulbe x)   //求函数的值
{
 return x*x*x*x*x-3*x*x*x+x-1;
}
double fx'(double x)   //求函数导数的值
{
 return 5*x*x*x*x-9*x*x+1;
}
double findsolution()   //搜索方程的单根
{

 
 double X[M];
 double  n=16;
   
    int a=0;
  do{
    a=a+1;
 for(int i=1,X[0]=-8,n=n/(a*M);i

  X=X[i-1]+n;
        n=16;
    for(int i=0;i {
  if(fx(X*fx[i+1]<0)
  {
  
   A[j]=X;
          j=j+1;
  }
 }
 
 }while(j==M)     //搜索结束,找到M个单根所在区间
return A[j];
}
double solution(double x)
{
 double a;
 do{
 a=x;
 x=a-fx(a)/fx'(a);                //牛顿迭代法求根
 }while(fabs(x-a)  cout<<"方程的根是:"<}
void main()
{
 double j[M]=A[j];

 for(int i=0;i

  solution( j[M]);
}

 

高级模式
星空(中国)精选大家都在看24小时热帖7天热帖大家都在问最新回答

针对ZOL星空(中国)您有任何使用问题和建议 您可以 联系星空(中国)管理员查看帮助  或  给我提意见

快捷回复 APP下载 返回列表