C语言求助,为什么2,4测试点WA了?
查看原帖
C语言求助,为什么2,4测试点WA了?
1121807
ZOECCCCCCCC楼主2023/12/16 13:29
#include "stdio.h"
#include "math.h"
#define f(x) a*pow(x,3)+b*pow(x,2)+c*x+d
double a,b,c,d;
int main() {
    scanf("%lf %lf %lf %lf", &a, &b, &c, &d);
    double x, x1, x2;
    for (x1 = -100, x2 = -99; x1 < 100; x1++, x2 = x1 + 1) {
        if (f(x1) == 0) {
            printf("%.02lf ", x1);
        } else if (fabs(f(x1) * f(x2)) < 0) {
            while (x2 - x1 >= 0.001) {
                x = (x1 + x2) / 2.0;
                if (f(x) * f(x1) <= 0) {
                    x2 = x;
                } else {
                    x1 = x;
                }
            }
            
            printf("%.02lf ", x);
        }
    }
    return 0;
}
2023/12/16 13:29
加载中...