## Solve Quadratic Equation using Python

Quadratic equation in python: Explore more instances related to python concepts from Python Programming Examples Guide and get promoted from beginner to professional programmer level in Python Programming Language.

Python quadratic formula: Quadratics or quadratic equations are polynomial equations of the second degree, which means that they contain at least one squared word.

ax2 + bx + c = 0

where x is an unknown variable and the numerical coefficients a , b , c.

### 2)Discriminant value

Discriminant = b ^ 2 - 4 * a *c

Based on the value of discriminant there are three types of roots for Quadratic Equation

### 3)Calculating roots of Quadratic Equation

roots = ( -b + sqrt(b ^ 2 - 4 * a *c) ) / (2 * a)   , ( -b - sqrt(b ^ 2 - 4 * a *c) ) / (2 * a)

Where sqrt is square root.

### 4)Types of roots

i)Real and distinct roots

When the Value of discriminant is greater than 0 then there exist two distinct roots for the quadratic equation

which can be calculated using the above roots formula.

Examples:

Input:

a = 2
b = -7
c = 6

Output:

The two distinct roots are :
(2+0j)
(1.5+0j)

ii)Real and equal roots

When the Value of discriminant is equal to 0 then there exist two equal roots for the quadratic equation .

which can be calculated using the above roots formula.

Examples:

Input:

a = 1
b = -4
c = 4

Output:

The two equal roots are :
2.0 2.0

iii)Complex roots

When the Value of discriminant is greater than 0 then there exist two complex roots for the quadratic equation .

which can be calculated using the above roots formula.

Examples:

Input:

a = 5
b = 2
c = 3

Output:

There exists two complex roots:
(-1+1.7320508075688772j)
(-1-1.7320508075688772j)

### 5)Approach

• To perform complex square root, we imported the cmath module.
• First, we compute the discriminant.
• Using if..elif..else we do the below steps
• If the value of discriminant is  greater than 0 then we print real roots using mathematical formula.
• If the value of discriminant is  equal to 0 then we print two equal roots using mathematical formula.
• If the value of discriminant is  less than 0 then we print two complex roots using mathematical formula.

### 6)Implementation:

Below is the implementation:

# importing cmath
import cmath
# given a,b,c values
a = 2
b = -7
c = 6
discriminant = (b**2) - (4*a*c)
# checking if the value of discriminant is greater than 0
if(discriminant > 0):
# here exist the two distinct roots and we print them
# calculating the roots
root1 = (-b+discriminant) / (2 * a)
root2 = (-b-discriminant) / (2 * a)
# printing the roots

print("The two distinct roots are : ")
print(root1)
print(root2)
# checking if the value of discriminant is equal to 0
elif(discriminant == 0):
# here exist the two equal roots
# calculating single root here discriminant is 0 so we dont need to write full formulae
root = (-b)/(2*a)
# printing the root
print("The two equal roots are : ")
print(root, root)
# else there exists complex roots
else:
# here exist the two complex roots
# calculating complex roots
realpart = -b/(2*a)
complexpart = discriminant/(2*a)*(-1)
# printing the roots
print("There exists two complex roots:")
print(realpart, "+", complexpart, "i")
print(realpart, "-", complexpart, "i")


Output:

The two distinct roots are :
(2+0j)
(1.5+0j)

Related Programs: