For a quadratic equation ax2+bx+c = 0 (where a, b and c are coefficients), it’s roots are given by following the formula.
The term b2-4ac is known as the discriminant of a quadratic equation. The discriminant tells the nature of the roots.
If the discriminant is greater than 0, the roots are real and different.
If the discriminant is equal to 0, the roots are real and equal.
If the discriminant is less than 0, the roots are complex and different.
C++ Program to Find Roots of Quadratic Equation if/else
#include<iostream>
#include<math.h>
using namespace std;
int main()
{
float root1,root2,a,b,c,d,imaginaryPart,realPart;
cout<<"Quadratic Equation is ax^2+bx+c=0";
cout<<"\nEnter values of a,b and c:";
cin>>a>>b>>c;
d=(b*b)-(4*a*c);
if(d>0)
{
cout<<"\nTwo real and distinct roots";
root1=(-b+sqrt(d))/(2*a);
root2=(-b-sqrt(d))/(2*a);
cout<<"\nRoots are "<<root1<<" and "<<root2;
}
else if(d==0)
{
cout<<"\nTwo real and equal roots";
root1=root2=-b/(2*a);
cout<<"\nRoots are "<<root1<<" and "<<root2;
}
else{
cout<<"\nRoots are complex and imaginary";
realPart = -b/(2*a);
imaginaryPart = sqrt(-d)/(2*a);
cout<<"\nRoots are "<<realPart<<"+"<<imaginaryPart<<"i and "<<realPart<<"-"<<imaginaryPart<<"i";
}
return 0;
}
Output of Program
Quadratic Equation is ax^2+bx+c=0
Enter values of a,b and c:5
5
5
Roots are complex and imaginary
Roots are -0.5+0.866025i and -0.5-0.866025i