from math import sqrt

def solucions_eq_2n_grau(a, b, c):
    """Retorna les dues solucions reals de l'equació de segon grau
    ax²+bx+c=0.

    Suposem que el discriminat és més gran o igual a zero.

    """
    d = b**2 - 4*a*c
    assert d >= 0
    x1 = (-b + sqrt(d)) / (2*a)
    x2 = (-b - sqrt(d)) / (2*a)
    return x1, x2

def te_arrels_reals_eq_2n_grau(a, b, c):
    """Retorna True si l'equació de segon grau ax²+bx+c=0 té arrels reals."""
    d = b**2 - 4*a*c
    return d >= 0

def es_arrel_eq_2n_grau(a, b, c, x, epsilon):
    """Retorna True si x és una solució de l'equació de segon grau ax²+bx+c=0."""
    # Simplifiquem l'expressió (a*x**2+b*x+c-0)<epsilon
    return abs(a*x**2+b*x+c) < epsilon

