C Program - Find Roots of a Quadratic Equation
A standard form of a quadratic equation is:
ax2 + bx + c = 0
Where:
a, b and c are real numbers and a ≠ 0.
Roots of the equation are:
For Example:
The roots of equation x2 + 5x + 4 = 0 is
The roots of the equation will be imaginary if D = b2 - 4ac < 0. For example - the roots of equation x2 + 4x + 5 = 0 will be
Example: Calculate roots of a Quadratic equation
In the example below, a function called roots is created which takes a, b and c as arguments to calculate the roots of the equation ax2 + bx + c = 0.
#include <stdio.h> #include <math.h> static void roots(double, double, double); static void roots(double a, double b, double c) { double D = b*b - 4*a*c; if (D >= 0) { double x1 = (-b + sqrt(D))/(2*a); double x2 = (-b - sqrt(D))/(2*a); printf("Roots are: %.f, %.f\n", x1, x2); } else { double x1 = -b/(2*a); double x2 = sqrt(-D)/(2*a); printf("Roots are: %.f±%.fi\n", x1, x2); } } int main() { printf("Equation is x*x+5x+4=0\n"); roots(1,5,4); printf("\nEquation is x*x+4x+5=0\n"); roots(1,4,5); }
The above code will give the following output:
Equation is x*x+5x+4=0 Roots are: -1, -4 Equation is x*x+4x+5=0 Roots are: -2±1i
Recommended Pages
- C Program - To Check Prime Number
- C Program - Bubble Sort
- C Program - Selection Sort
- C Program - Maximum Subarray Sum
- C Program - Reverse digits of a given Integer
- C - Swap two numbers
- C Program - Fibonacci Sequence
- C Program - Insertion Sort
- C Program - Find Factorial of a Number
- C Program - Find HCF of Two Numbers
- C Program - Merge Sort
- C Program - Shell Sort
- Stack in C
- Queue in C
- C Program - Find LCM of Two Numbers
- C Program - To Check Whether a Number is Palindrome or Not
- C Program - To Check Whether a String is Palindrome or Not
- C Program - Heap Sort
- C Program - Quick Sort
- C - Swap Two Numbers without using Temporary Variable