c语言

怎么用C语言二分法求方程的根

小亿
236
2024-02-20 15:47:18
栏目: 编程语言

二分法是一种常用的数值计算方法,可以用来求解方程的根。下面是一个用C语言实现二分法求方程根的示例代码:

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

// 定义方程的函数
double f(double x) {
    return x*x - 2;
}

// 二分法求解方程的根
double bisection(double a, double b, double epsilon) {
    double c;
    
    while ((b - a) > epsilon) {
        c = (a + b) / 2;
        
        if (f(c) == 0) {
            return c;
        } else if (f(c)*f(a) < 0) {
            b = c;
        } else {
            a = c;
        }
    }
    
    return (a + b) / 2;
}

int main() {
    double a = 1.0;
    double b = 2.0;
    double epsilon = 0.0001;
    double root;
    
    root = bisection(a, b, epsilon);
    
    printf("The root of the equation is: %f\n", root);
    
    return 0;
}

在上面的代码中,f函数定义了需要求解根的方程,bisection函数实现了二分法求根的算法。在main函数中,我们定义了方程的初始区间ab,以及精度epsilon,然后调用bisection函数求解方程的根,并输出结果。

你可以根据需要修改方程的定义和初始区间,运行代码来求解不同方程的根。

0
看了该问题的人还看了