牛顿迭代法求多项式在1.5附近的值2*x的3次幂--4x平方+3*x-6=0的实现代码_C 语言

代码如下所示:

复制代码 代码如下:

#include <stdio.h>
#include <math.h>

int main()
{
   float x,x0,f,f0;
   x=1.5;
   do
   {
    x0=x; 
    f0=((2*x-4)*x+3)*x-6;  //求得在x0处解
    f=(6*x0-8)*x0+3;     // 在(x0 ,f0)处导数
    x=x0-f0/f;    
   }while(fabs(x-x0)>=1e-6);
    printf("the root is %.2f",x0);
   return 0;

}

时间: 2024-09-26 07:47:13

牛顿迭代法求多项式在1.5附近的值2*x的3次幂--4x平方+3*x-6=0的实现代码_C 语言的相关文章

C语言OJ项目参考(2405)牛顿迭代法求根

2405: 牛顿迭代法求根 Description 用牛顿迭代法求根.方程为ax3+bx2+cx+d=0.系数a,b,c,d的值一次为1,2,3,4,由主函数输入.求x在1附近的一个实根.求出根后由主函数输出.结果保留两位小数. Input 系数a,b,c,d的值 Output x在1附近的一个实根 Sample Input 1 2 3 4 Sample Output -1.65 HINT 主函数已给定如下,提交时不需要包含下述主函数 /* C代码 */ int main() { double

C++求斐波那契数的实例代码_C 语言

题目内容:斐波那契数定义为:f(0)=0,f(1)=1,f(n)=f(n-1)+f(n-2)(n>1且n为整数) 如果写出菲氏数列,则应该是: 0 1 1 2 3 5 8 13 21 34 -- 如果求其第6项,则应为8. 求第n项菲氏数. 输入描述:输入数据含有不多于50个的正整数n(0<=n<=46). 输出描述:对于每个n,计算其第n项菲氏数,每个结果应单独占一行. 题目分析:先把第0项到第46项的斐波那契数求出来,放在一个数组中,然后,直接查表即可,这样就不会超时. 参考代码:

求子数组最大和的实例代码_C 语言

题目:输入一个整形数组,数组里有正数也有负数.数组中连续的一个或多个整数组成一个子数组,每个子数组都有一个和.求所有子数组的和的最大值.要求时间复杂度为O(n). 例如输入的数组为1, -2, 3, 10, -4, 7, 2, -5,和最大的子数组为3, 10, -4, 7, 2,因此输出为该子数组的和18. 找到状态转移方程,dp[i]表示前i个数中,包含i的子数组的最大和.要么第i个数自己最大,要么他要和包含i-1的子数组最大和(即dp[i-1])联合在一起.即dp[i] = max{arr

递归法求最大公约数和最小公倍数的实现代码_C 语言

       数学原理:        设有两个数num1和num2,假设num1比较大.令余数r = num1 % num2.       当r == 0时,即num1可以被num2整除,显然num2就是这两个数的最大公约数.       当r != 0时,令num1 = num2(除数变被除数),num2 = r(余数变除数),再做 r = num1 % num2.递归,直到r == 0.       以上数学原理可以用具体的两个数做一下分析,这样容易理解.代码实现(求最大公约数): 复制代

C语言实现牛顿迭代法解方程

利用迭代算法解决问题,需要做好以下三个方面的工作: 一.确定迭代变量 在可以用迭代算法解决的问题中,我们可以确定至少存在一个可直接或间接地不断由旧值递推出新值的变量,这个变量就是迭代变量. 二.建立迭代关系式 所谓迭代关系式,指如何从变量的前一个值推出其下一个值的公式(或关系).迭代关系式的建立是解决迭代问题的关键,通常可以使用递推或倒推的方法来完成. 三.对迭代过程进行控制 在什么时候结束迭代过程?这是编写迭代程序必须考虑的问题.不能让迭代过程无休止地执行下去.迭代过程的控制通常可分为两种情况

c语言-C语言牛顿迭代法,正常运行输出错误结果,求助

问题描述 C语言牛顿迭代法,正常运行输出错误结果,求助 求方程ax^3+bx^2+c^x+d=0的解,其中xn+1=xn-f(xn)/f'(xn) 我的代码这样写的: #include #include int main(void) { int a,b,c,d; printf("Please input four integers:"); scanf("%d %d %d %d",&a,&b,&c,&d); double x,y; x=

如何用c语言解决牛顿迭代法

问题描述 如何用c语言解决牛顿迭代法 用c语言解决牛顿迭代法,要求显示表达式,求大神帮助,期末作业,完不成要挂科,谢谢了 解决方案 一元任意阶次方程求解,注意初始值不正确也有可能得不到解.http://blog.csdn.net/qq_27183003/article/details/49808191 解决方案二: #include <stdio.h> #include <math.h> //y=x^3-5x^2+16x-80 float f(float x) { return (

牛顿迭代法

     牛顿迭代法(Newton's method)又称为牛顿-拉夫逊(拉弗森)方法(Newton-Raphson method),它是牛顿在17世纪提出的一种在实数域和复数域上近似求解方程的方法. 牛顿迭代公式     设r是\(f(x)=0\)的根,选取\(x_0\)作为r的初始近似值,过点\((x_0,f(x_0))\) ,做曲线 \(y=f(x)\)的切线L,L的方程为\(y=f(x_0)+f'(x_0)(x-x_0)\) ,求出L与x轴交点的横坐标 \[x_1=x_0-\frac{f

c语言-C语言用迭代法求平方根

问题描述 C语言用迭代法求平方根 要求,输入一个正整数,计算平方根,计算到1-4e为止 不得使用现成的函数. 解决方案 http://blog.sina.com.cn/s/blog_47180e8f01000a47.html