Equació de segon grau¶
Dissenyeu les funcions següents i deseu-les al fitxer
eq_2n_grau.py:
solucions_eq_2n_grau()que rebi tres paràmetresa,bici retorni les dues arrels reals de la paràbola \(y=ax^2+bx+c\). Suposeu que la funció té exactament dues solucions reals.Per exemple:
>>> a, b, c = 1, -4, 3 >>> x1, x2 = solucions_eq_2n_grau(a, b, c) >>> a*x1**2+b*x1+c == 0 True >>> a*x2**2+b*x2+c == 0 True
Nota
Trobareu més jocs de proves al fitxer
tests-solucions_eq_2n_grau.txtte_arrels_reals_eq_2n_grau()que donats tres paràmetresa,bic, retorniTruesi l’equació de segon grau \(y=ax^2+bx+c\) té arrels reals oFalseen cas contrari.Per exemple:
>>> a, b, c = 1, -4, 3 >>> r = te_arrels_reals_eq_2n_grau(a, b, c) >>> r True >>> a, b, c = 2, -4, 3 >>> r = te_arrels_reals_eq_2n_grau(a, b, c) >>> r False
Nota
Trobareu més jocs de proves al fitxer
tests-te_arrels_reals_eq_2n_grau.txtes_arrel_eq_2n_grau()que rebi cinc paràmetresa,b,c,xiepsi retorniTruesi x és una arrel de l’equació de segon grau \(y=ax^2+bx+c\) oFalseen cas contrari. Les comparacions entre nombres reals s’han de fer amb la tolerànciaepsdonada.Per exemple:
>>> es_arrel_eq_2n_grau(3, -5, 1, 1.434, 1e-1) True >>> es_arrel_eq_2n_grau(3, -5, 1, 1.434, 1e-2) True >>> es_arrel_eq_2n_grau(3, -5, 1, 1.434, 1e-3) True >>> es_arrel_eq_2n_grau(3, -5, 1, 1.434, 1e-4) False
Nota
Trobareu més jocs de proves al fitxer
tests-es_arrel_eq_2n_grau.txt
Solució
Disposeu d’una solució al fitxer eq_2n_grau.py.