首页 > 其他分享 >牛顿迭代法求方程根

牛顿迭代法求方程根

时间:2023-04-17 14:44:22浏览次数:34  
标签:1.5 方程 float 牛顿 solution fd 迭代法 x0

    1.在1附近找任一实数作为x0的初值,取1.5,x0 = 1.5;

     2.分别计算f(x),f'(x)的值

     3.令h = f(x)/f'(x);

     4.x = x0 - h;令x0 = x准备进行下一次循环;

     5.若|x-x0| >= 1e-5,则继续进行循环,反之输出x的值;

     

 

 

 

     #include<iostream>
     #include<cmath>
     using namespace std;
     float solution(float a, float b, float c, float d);
     int main()
     {
     float a, b, c, d, x;
     cout << "请输入方程的系数:" << endl;
     cin >> a >> b >> c >> d;
     x = solution(a, b, c, d);
     cout<<"所求方程的根为:" << x << endl;
     return 0;
     }
     float solution(float a, float b, float c, float d)
     {
     float x0, x = 1.5, f, fd, h;
     do
     {
     x0 = x;
     f = a * x0 * x0 * x0 + b * x0 * x0 + c * x0 + d;
     fd = 3 * a * x0 * x0 + 2 * b * x0 + c;
     h = f / fd;
     x = x0 - h;
     } while (fabs(x - x0) >= 1e-5);
     return x;
     }

标签:1.5,方程,float,牛顿,solution,fd,迭代法,x0
From: https://www.cnblogs.com/hbro/p/17325801.html

相关文章

  • 【230417-1】三种方法解方程:(x-2017)(x-2021)=12
    ......
  • 牛顿迭代法求方程根
    编写用牛顿迭代法求方程根的函数。方程为a*x的三次方+b*x的平方+c*x+d=0,系数a,b,c,d有主函数输入。求x在1附近的一个实根。求出根后,有主函数输出。牛顿迭代法的公式是:x=x。-f(x。)/f’(x。),设迭代到|x-x。|<=10的-5次方时结束。牛顿迭代法是在已知x0的基础上寻找更接近方程的根的值,从而......
  • w7 T232071 解方程
      主要思路:由于根与根之差的绝对值>=1,所以在单位唯一的区间内至多只有一个根。使用零点存在性定理,定义左端点left和right,若f(left)*f(right)<=0,则在区间内必有根,然后再在区间内使用二分来确定根的精度。 代码如下:#include<iostream>#include<cmath>#include<algorithm>#in......
  • day 6 牛顿迭代法求根
     1.由f(x)计算f(x)的导数;2.输入一个X,并让其作为X0进行计算;3.反复迭代X,直到|x-x0|<=1e-5;4.输出当前X; #include<iostream>#include<math.h>usingnamespacestd;intmain(){floatX,X0,a,b,c,d;printf("输入X0,a,b,c,d\n");cin>>X0>>a>>b>>......
  • 牛顿迭代法求方程根
    一问题描述用牛顿迭代方程x=x0-fx0/fx0'求根方程为a*x*x*x+b*x*x+c*x+d初始值为1.5求1的近似值二设计思路迭代方程球根套用公式将fx0和fx0'求出,再将函数判断收敛还是离散,运用fabs函数用上#include<math.h>的头文件。三程序流程图  四伪代码实现定义函数fact作为牛顿公......
  • 交直流潮流计算 统一迭代法 采用matlab编写交直流潮流计算程序,程序采用统一迭代法
    交直流潮流计算统一迭代法采用matlab编写交直流潮流计算程序,程序采用统一迭代法,9节点系统,有详细参考资料。ID:5990668049980781......
  • 牛顿迭代法求方程根和最佳存款方案
    牛顿迭代法求方程根:解题思路:输入a,b,c,d,定义变量储存f(x0)和f’(x0),给x0取一个在1附近的初值,利用dowhile语句来实现条件,当符合结束条件时输出x。代码:#include<iostream>#include<iomanip>#include<cmath>usingnamespacestd;doubleqiu(inta,intb,intc,intd)//设计......
  • R语言中实现sem进行结构方程建模和路径图可视化|附代码数据
    原文链接:http://tecdat.cn/?p=23312最近我们被客户要求撰写关于结构方程建模的研究报告,包括一些图形和统计输出。结构方程模型是一个线性模型框架,它对潜变量同时进行回归方程建模引言 诸如线性回归、多元回归、路径分析、确认性因子分析和结构回归等模型都可以被认为是SEM的......
  • 数理方程中定解问题的求解法(一)
    泛定方程和定解问题泛定方程和叠加原理简单来说泛定方程就是不带任何初始条件和边界条件的方程,它刻画广泛性的运动规律,不涉及具体的系统和具体的问题。泛定方程有线性和非线性之分,而线性泛定方程满足叠加原理,而叠加原理是求解线性范定方程的定解问题的强有力的工具。叠加原理是......
  • 同余方程
    前置知识:裴蜀定理扩展欧几里得算法(exgcd)裴蜀定理:定义:裴蜀定理,又称贝祖定理,是一个关于\(gcd\)的定理。内容:设\(a,b\)整数,则存在整数,使得\(ax+by=\gcd(a,b)\)证明:略。扩展欧几里得算法(exgcd):意义:扩展欧几里得算法是用来解决形如\(ax+bd=k\)......