Kvadratická rovnice

Kvadratická funkce y=x^2 - 4x + 3
Kvadratická funkce y = x2 - 4x + 3

Kvadratická rovnice o jedné neznámé je algebraická rovnice druhého řádu ve tvaru ax^{2} + bx + c, kde a, b, c jsou reálné koeficienty. Kvadratická rovnice má v oboru reálných čísel 0, 1 nebo 2 řešení. Za předpokladu, že je koeficient a nulový, hovoříme o lineární rovnici.

Kvadratická funkce je vždy popsána parabolou. Za předpokladu, že je a kladné, pak je parabola konvexní, v opačném případě je konkávní.

Řešení

Nejprve spočítáme diskriminant, dle vzorce

D = b^{2} - 4ac

Pokud je diskriminant záporný, pak rovnice nemá řešení v oboru reálných čísel.

Pokud je diskriminant nulový, pak má rovnice právě jedno dvojnásobné řešení:

x ={-b \over {2a}}

Pokud je diskriminant kladný, pak má rovnice dvě různá řešení:


x_{1,2} = \begin{cases} 
{{-b + \sqrt D} \over {2a}} 
\\
{{-b - \sqrt D} \over {2a}}
\end{cases}

Příklad

Zjistěte kořeny rovnice x^2 - 4x + 3 = 0.

Nejprve vypočítáme diskriminant:

D = b^{2} - 4ac = 4^2 - 4 \cdot 1 \cdot 3 = 16 - 12 = 4

Diskriminant je kladný, rovnice má dvě řešení v oboru reálných čísel.


x_{1,2} = \begin{cases}
{{{-b + \sqrt D} \over {2a}} = {{4 + \sqrt 4} \over 2} = 3} \\
{{{-b - \sqrt D} \over {2a}} = {{4 - \sqrt 4} \over 2} = 1}
\end{cases}

Kód

    /**
     * Resi kvadratickou rovnici o jedne nezname ve tvaru
     * ax^2 + bx + c = 0
     * @param a
     * @param b
     * @param c
     * @return pole realnych korenu, null - pokud nema rovnice reseni v oboru
     * realnych cisel
     */
    public static double[] solveQuadraticEquation(double a, double b, double c) {
        double d = b*b - 4*a*c; //diskriminant
        if(d < 0) {
            return null;
        } else if (d == 0) {
            double[] result = {-b/2*a};
            return result;
        } else {
            double[] result = {(-b + Math.sqrt(d))/(2*a), (-b - Math.sqrt(d))/(2*a)};
            return result;
        }
    }
       /**
         * Resi kvadratickou rovnici o jedne nezname ve tvaru
         * ax^2 + bx + c = 0
         * @param a
         * @param b
         * @param c
         * @return pole realnych korenu, null - pokud nema rovnice reseni v oboru
         * realnych cisel
         */
        public static double[] SolveQuadraticEquation(double a, double b, double c)
        {
            double d = b * b - 4 * a * c; //diskriminant
            if (d < 0)
            {
                return null;
            }
            else if (d == 0)
            {
                double[] result = { -b / 2 * a };
                return result;
            }
            else
            {
                double[] result = { (-b + Math.Sqrt(d)) / (2 * a), (-b - Math.Sqrt(d)) / (2 * a) };
                return result;
            }
        }
/**
 * Kvadraticka rovnice o jedne nezname ve tvaru ax^2 + bx + c = 0
 * @param $a
 * @param $b
 * @param $c
 * @return pole realnych korenu, NULL - pokud nema rovnice reseni v oboru realnych cisel
 * @author Thomas (www.adamjak.net)
 */
function solve_quadratic_equation($a, $b, $c){
    $d = $b*$b - 4*$a*$c; //diskriminant
    if($d < 0) {
        return NULL;
    } else if ($d == 0){
        $result = (-$b/2*$a);
        return $result;
    } else {
        $result = ((-$b + sqrt($d))/(2*$a) . (-$b - sqrt($d))/(2*$a));
        return $result;
    }
}
Hodnocení (2): 4,5

Přečtěte si také

Diskuse





Článek zatím nemá žádné komentáře.