HeyVV 2019-11-26 16:09 采纳率: 0%
浏览 356

C++弦截法求方程的根 求大佬帮忙看看代码哪里出错了

求方程x^3-2x^2+x-2=0在[1,3]之间的根。
答案应该是2,但我的运行结果是1.15366e+029

#include  <iostream> 
#include <math.h> 
using  namespace  std; 
float f(float x)
{
    float y;
    y=x*x*x-2*x*x+x-2;
    return y;
}
float pointx(float x1,float x2)
{
    float x0;
    x0=x1*f(x2)-x2*f(x1)/f(x2)-f(x1);
    return x0;
}
float root(float x1,float x2)
{
    float x0;
    do
    {
        x0=pointx(x1,x2);
        if(f(x0)*f(x1)>0)
        {x1=x0;
        }
        else x2=x0;
    }
    while((fabs(f(x0)>=1e-6))||(fabs(f(x0)<=-1e-6)));
    return x0;
}
  main()
{
   float x0;
   x0=root(1,3);
   cout<<x0<<endl;
}
  • 写回答

2条回答 默认 最新

  • QiQaWgYu 2019-11-26 17:33
    关注

    pointx里的

    x0 = x1 - f(x1) * (x1 - x2) / (f(x1) - f(x2));
    
    评论

报告相同问题?

悬赏问题

  • ¥15 求差集那个函数有问题,有无佬可以解决
  • ¥15 【提问】基于Invest的水源涵养
  • ¥20 微信网友居然可以通过vx号找到我绑的手机号
  • ¥15 寻一个支付宝扫码远程授权登录的软件助手app
  • ¥15 解riccati方程组
  • ¥15 display:none;样式在嵌套结构中的已设置了display样式的元素上不起作用?
  • ¥15 使用rabbitMQ 消息队列作为url源进行多线程爬取时,总有几个url没有处理的问题。
  • ¥15 Ubuntu在安装序列比对软件STAR时出现报错如何解决
  • ¥50 树莓派安卓APK系统签名
  • ¥65 汇编语言除法溢出问题