# Polynomial Root Finder > Find all real and complex roots of polynomials up to degree n using synthetic division and rational root theorem **Category:** Math **Keywords:** polynomial, roots, zeros, quadratic, cubic, quartic, complex roots, real roots **URL:** https://complete.tools/polynomial-root-finder ## How it works The tool applies different algorithms depending on the degree of the polynomial. **Degree 2 (Quadratic Formula):** For ax^2 + bx + c = 0, the roots are computed exactly using: x = (-b +/- sqrt(b^2 - 4ac)) / (2a) When the discriminant (b^2 - 4ac) is negative, the square root produces an imaginary number, yielding two complex conjugate roots. **Degree 3 and higher (Durand-Kerner Method):** The Durand-Kerner method is a simultaneous root-finding algorithm. It starts with n initial guesses (one per root) spread on a circle in the complex plane. In each iteration, every guess is updated using the formula where P(z) is the polynomial evaluated at the current guess and the denominator is the product of differences with all other current guesses. The method converges when all corrections become smaller than a tolerance threshold. After Durand-Kerner converges, each root is refined with Newton's method: z := z - P(z) / P'(z). This two-stage approach gives 4-6 significant digits of precision across the full degree range. **Horner's Method:** Both polynomial evaluation and derivative evaluation use Horner's method, which rewrites a degree-n polynomial as a nested product. This requires only n multiplications instead of the naive approach and keeps the calculation fast and numerically stable. ## How to use 1. Select the degree of your polynomial using the segmented control at the top of the tool. 2. Enter each coefficient in the input fields, from the highest power down to the constant term. Enter 0 for any missing term. 3. Click "Find Roots" to compute. 4. Review the real roots (shown with green badges) and complex roots (shown with blue badges). 5. Check the Factored Form section to confirm the polynomial expressed as a product of factors. **Example:** For x^2 - 5x + 6 = 0, set degree to 2 and enter coefficients 1, -5, 6. The tool returns x = 3 and x = 2. **Example with complex roots:** For x^2 + 1 = 0, set degree to 2 and enter coefficients 1, 0, 1. The tool returns x = i and x = -i, a complex conjugate pair. ## FAQs **Q:** What is a polynomial root? **A:** A root (or zero) of a polynomial f(x) is any value of x where f(x) = 0. For example, x = 2 is a root of x^2 - 4 because 4 - 4 = 0. Every degree-n polynomial has exactly n roots when complex numbers are counted, which is guaranteed by the Fundamental Theorem of Algebra. **Q:** What are complex roots and why do they come in pairs? **A:** Complex roots have the form a + bi where b is nonzero. For polynomials with real coefficients, complex roots always appear as conjugate pairs: if a + bi is a root, then a - bi is also a root. This follows from the fact that complex conjugation commutes with polynomial evaluation, so if P(z) = 0 then P(conjugate of z) = 0 as well. **Q:** How accurate are the results? **A:** The quadratic formula (degree 2) gives exact results up to floating-point precision (about 15 significant digits). For degree 3 and above, the Durand-Kerner method combined with Newton polishing typically achieves 4-6 significant digits of accuracy. Accuracy may be slightly lower for polynomials with very large or very small coefficients, or for polynomials with repeated roots very close together. **Q:** Why does the leading coefficient have to be nonzero? **A:** The leading coefficient is the coefficient of the highest power of x. If it is zero, the polynomial has a lower actual degree than selected, and the algorithm would attempt to find the wrong number of roots. The tool alerts you if the leading coefficient is zero and asks you to either reduce the degree or enter a nonzero value. **Q:** Can I find roots of polynomials with degree higher than 6? **A:** This tool supports degree 2 through 6. For higher degrees, the same Durand-Kerner algorithm applies in principle, but numerical accuracy can degrade with degree and computation takes longer. If you need roots of polynomials beyond degree 6, specialized numerical software such as NumPy, MATLAB, or Mathematica is recommended. --- *Generated from [complete.tools/polynomial-root-finder](https://complete.tools/polynomial-root-finder)*