溫馨提示×

c語言編寫一元二次方程求根

小億
140
2024-01-04 14:19:34
欄目: 編程語言

以下是一個用C語言編寫的一元二次方程求根的例子:

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

int main() {
    double a, b, c;
    double discriminant, root1, root2;
    
    printf("請輸入一元二次方程的系數:\n");
    printf("a = ");
    scanf("%lf", &a);
    printf("b = ");
    scanf("%lf", &b);
    printf("c = ");
    scanf("%lf", &c);
    
    discriminant = b * b - 4 * a * c;
    
    if (discriminant > 0) {
        root1 = (-b + sqrt(discriminant)) / (2 * a);
        root2 = (-b - sqrt(discriminant)) / (2 * a);
        printf("方程有兩個實根:\n");
        printf("根1 = %lf\n", root1);
        printf("根2 = %lf\n", root2);
    } else if (discriminant == 0) {
        root1 = -b / (2 * a);
        printf("方程有一個實根:\n");
        printf("根 = %lf\n", root1);
    } else {
        double realPart = -b / (2 * a);
        double imaginaryPart = sqrt(-discriminant) / (2 * a);
        printf("方程有兩個虛根:\n");
        printf("根1 = %lf + %lfi\n", realPart, imaginaryPart);
        printf("根2 = %lf - %lfi\n", realPart, imaginaryPart);
    }
    
    return 0;
}

這段程序首先要求用戶輸入一元二次方程的系數a、b和c,然后計算判別式discriminant。根據判別式的值,程序判斷方程的根的情況,并輸出結果。如果判別式大于0,則方程有兩個實根;如果判別式等于0,則方程有一個實根;如果判別式小于0,則方程有兩個虛根。

0
亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女