C 语言程序用于求解二次方程的根
在本教程中,我们将讨论一个用于求解二次方程根的程序。
给定形式为 ax2 + bx + c 的二次方程。我们的任务是求解给定方程的根 x1 和 x2。
为此,我们使用确定性方法,其中
D = √b2 - 4ac
然后方程的根为
x1 = (-b + D)/2a 且
x2 = (-b - D)/2a
示例
#include<stdio.h> #include<math.h> #include<stdlib.h> //calculating the roots of equation void calc_roots(int a, int b, int c) { if (a == 0) { printf("Invalid Equation"); return; } int d = b*b - 4*a*c; double sqrt_val = sqrt(abs(d)); if (d > 0) { printf("Roots are both real and different
"); printf("%f
%f",(double)(-b + sqrt_val)/(2*a) , (double)(-b - sqrt_val)/(2*a)); } else if (d == 0) { printf("Roots are real and same
"); printf("%f",-(double)b / (2*a)); } else { printf("Roots are complex
"); printf("%f + i%f
%f - i%f", -(double)b /(2*a),sqrt_val ,-(double)b / (2*a), sqrt_val); } } int main() { int a = 2, b = -5, c = 8; calc_roots(a, b, c); return 0; }
输出
Roots are complex 1.250000 + i6.244998 1.250000 - i6.244998
广告