首页 > 代码库 > c程序设计 8.12 用牛顿迭代法求根。方程为:ax^3+bx^2+cx+d=0 ,系数a,b,c,d由主函数输入。求X在1附近的一个实根。求出后由主函数输出.
c程序设计 8.12 用牛顿迭代法求根。方程为:ax^3+bx^2+cx+d=0 ,系数a,b,c,d由主函数输入。求X在1附近的一个实根。求出后由主函数输出.
//https://baike.baidu.com/item/%E7%89%9B%E9%A1%BF%E8%BF%AD%E4%BB%A3%E6%B3%95/10887580?fr=aladdin#4 //百度牛顿迭代法 #include <stdio.h> #include <math.h> double solut(double a,double b,double c,double d) { double x1=1,x,f,f1; //迭代 do { x=x1; f=((a*x+b)*x+c)*x+d;//原函数 f1=(3*a*x+2*b)*x+c;//求导之后的函数 x1=x-f/f1; } while(fabs(x1-x)>=0.00000001); return x1; } int main() { double solut(double ,double ,double ,double ); double a,b,c,d; scanf("%lf%lf%lf%lf",&a,&b,&c,&d); printf("%.2f\n",solut(a,b,c,d)); return 0; }
结果:
c程序设计 8.12 用牛顿迭代法求根。方程为:ax^3+bx^2+cx+d=0 ,系数a,b,c,d由主函数输入。求X在1附近的一个实根。求出后由主函数输出.
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。