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

更新于: 09-Jul-2020

2K+ 次浏览

开启你的 事业

完整学习课程,获得认证

开始
广告