# Python Program to Solve Roots of Quadratic Equation

Python program to solve quadratic equation (ax2+bx+c=0); In this tutorial, you will learn how to create a program in python to solve roots of a quadratic equation.

A quadratic equation is an equation of the second degree, meaning it contains at least one term that is squared. The standard form is `ax² + bx + c = 0` with a, b, and c being constants or numerical coefficients, and x is an unknown variable for example `6x² + 11x - 35 = 0`.

The values of x that make the equation true are called roots of the equation Quadratic equations have 2 roots.

The term `b2-4ac` is known as the discriminant of a quadratic equation. The discriminant tells the nature of the roots.

1. If the discriminant is greater than 0, the roots are real and different.
2. If the discriminant is equal to 0, the roots are real and equal.
3. If the discriminant is less than 0, the roots are complex and different.

## Python program to find the roots of an quadratic equation

Use the following steps and write a program to find and display roots of quadratic equation in python:

• Import the math module.
• Take inputs from the user.
• Use this formula X = b**2 – 4 * a * c to solve a quadratic equation.
• Next use conditional statements in the program.
• Print result.
```import math

a = float(input("Insert coefficient a: "))
b = float(input("Insert coefficient b: "))
c = float(input("Insert coefficient c: "))

discriminant = b**2 - 4 * a * c

if discriminant >= 0:
x_1=(-b+math.sqrt(discriminant))/2*a
x_2=(-b-math.sqrt(discriminant))/2*a
else:
x_1= complex((-b/(2*a)),math.sqrt(-discriminant)/(2*a))
x_2= complex((-b/(2*a)),-math.sqrt(-discriminant)/(2*a))

if discriminant > 0:
print("The function has two distinct real roots: {} and {}".format(x_1,x_2))
elif discriminant == 0:
print("The function has one double root: ", x_1)
else:
print("The function has two complex (conjugate) roots: {}  and {}".format(x_1,x_2))
```

#### Output

```Insert coefficient a: 1
Insert coefficient b: 5
Insert coefficient c: 6
The function has two distinct real roots: -2.0 and -3.0
```

Explanation of the above python program

Import the built-in `math` module to perform complex square root operation in the program. Then we are taking coefficient inputs from the user.

After that, calculate the discriminant using the `b2-4ac` formula, based on the result we have an if-else statement to compute the roots for complex conjugates we are using the python `complex()` method. Finally, Print out the result using string formatting.

## Recommended Python Programs 