The roots of a function are the x-intercepts. By definition, the y-coordinate of points lying on the x-axis is **zero**. Therefore, to find the roots of a quadratic function, we set f (x) = 0, and solve the equation, ax^{2} + bx + c = 0.

**Conditions for a quadratic equation – **

ax^2 + bx + c = 0 where a, b, c are real numbers and cannot be zero ie, there value must be from {-∞ to -1} and {1 to ∞}

**A mathematical formula for finding the roots of a quadratic equation – **

roots = (-b ± √(b2-4ac)) / (2a) ± represents there are two roots.

**The roots of the quadratic equations are – **

first = (-b + √(b2-4ac)) / (2a) second = (-b - √(b2-4ac)) / (2a)

**The (b^2 – 4ac) which is the determinant, tells us about the nature of the roots –**

- if
**(b^2 – 4ac) > 0**, roots are real and different - if
**(b^2 – 4ac) == 0**, roots are real and equal - if
**(b^2 – 4ac) < 0**, roots are complex and different

**Code to find roots of a quadratic equation:**

## Java

`// Java program to find the roots of ` `// quadratic equation ` ` ` `public` `class` `Main { ` ` ` ` ` `public` `static` `void` `main(String[] args) ` ` ` `{ ` ` ` ` ` `// value of the constants a, b, c ` ` ` `double` `a = ` `7.2` `, b = ` `5` `, c = ` `9` `; ` ` ` ` ` `// declared the two roots ` ` ` `double` `firstroot, secondroot; ` ` ` ` ` `// determinant (b^2 - 4ac) ` ` ` `double` `det = b * b - ` `4` `* a * c; ` ` ` ` ` `// check if determinant is greater than 0 ` ` ` `if` `(det > ` `0` `) { ` ` ` ` ` `// two real and distinct roots ` ` ` `firstroot = (-b + Math.sqrt(det)) / (` `2` `* a); ` ` ` `secondroot = (-b - Math.sqrt(det)) / (` `2` `* a); ` ` ` ` ` `System.out.format( ` ` ` `"First Root = %.2f and Second Root = %.2f"` `, ` ` ` `firstroot, secondroot); ` ` ` `} ` ` ` ` ` `// check if determinant is equal to 0 ` ` ` `else` `if` `(det == ` `0` `) { ` ` ` ` ` `// two real and equal roots ` ` ` `// determinant is equal to 0 ` ` ` `// so -b + 0 == -b ` ` ` `firstroot = secondroot = -b / (` `2` `* a); ` ` ` ` ` `System.out.format( ` ` ` `"First Root = Second Root = %.2f;"` `, ` ` ` `firstroot); ` ` ` `} ` ` ` ` ` `// if determinant is less than zero ` ` ` `else` `{ ` ` ` ` ` `// roots are complex number and distinct ` ` ` `double` `real = -b / (` `2` `* a); ` ` ` ` ` `double` `imaginary = Math.sqrt(-det) / (` `2` `* a); ` ` ` ` ` `System.out.printf(` `"First Root = %.2f+%.2fi"` `, ` ` ` `real, imaginary); ` ` ` `System.out.printf(` `"\nSecond Root = %.2f-%.2fi"` `, ` ` ` `real, imaginary); ` ` ` `} ` ` ` `} ` `}` |

*chevron_right*

*filter_none*

**Output**

First Root = -0.35+1.06i Second Root = -0.35-1.06i

Attention reader! Don’t stop learning now. Get hold of all the important **Java Foundation** and Collections concepts with the **Fundamentals of Java and Java Collections Course** at a student-friendly price and become industry ready.