c语言二分法怎么用,求例子!!

Python019

c语言二分法怎么用,求例子!!,第1张

二分法查找还是二分法求方程式解

#include<stdio.h>

#include <math.h>

float f( float a )

{

    return a*a*a + a - 1

}

float jie( float a, float b )

{

    /* x*x*x + x -1 = 0 */

    float m = (a+b)/2

    printf( "a=%f,b=%f\n", a, b)

    printf( "fm=%f, fa=%f, fb=%f\n", f(m), f(a), f(b) )

    if ( f(a)*f(b)> 0 )

    {

        printf( "起始区间不正确\n" )

        return m

    }

    if ( fabs(f(m)) < 0.0001 )

        return m

    if ( f(m)*f(a) > 0 )

        return jie( m, b )

    else

        return jie( a, m )

}

int main()

{

    float a, b, x

    printf( "输入起始区间: " )

    scanf( "%f %f", &a, &b )

    x = jie( a, b )

    printf( "x^3+x-1=0 x= %.3f\n", x )

}

1、函数二分法是什么意思。

2、绘画二分法是什么意思。

3、哲学二分法是什么意思。

4、矛盾二分法是什么意思。

1.对于区间[a,b]上连续不断且f(a)·f(b)<0的函数y=f(x),通过不断地把函数f(x)的零点所在的区间一分为二,使区间的两个端点逐步逼近零点,进而得到零点近似值的方法叫二分法。

2. 二分法(Bisection method) 即一分为二的方法. 设[a,b]为R的闭区间. 逐次二分法就是造出如下的区间序列([an,bn]):a0=a,b0=b,且对任一自然数n,[an+1,bn+1]或者等于[an,cn],或者等于[cn,bn],其中cn表示[an,bn]的中点。