def post_polynomes(l_calcul): """Réduit les polynômes de la liste de calculs""" for k in range(len(l_calcul)): if 'Polynome(' in l_calcul[k]: p = eval(l_calcul[k]) if Polynome.reductible(p): p = Polynome.reduction_detaillee(p) if isinstance(p, Polynome): l_calcul[k] = repr(p) else: if isinstance(p, basestring): p = splitting(p) if (k and l_calcul[k-1] in "*-") or (k<len(l_calcul)-1 and l_calcul[k+1] in "**"): p.insert(0, "(") p.append(")") l_calcul[k:k+1] = p return l_calcul
def poly(entier): long = random.randrange(3) degre=[0, 1, 2] p = [[deci(entier), degre.pop(random.randrange(len(degre)))] for i in range(long+1)] p = Polynome(p, "x") while p == Polynome([[0, 0]], "x"): degre=[0, 1, 2] p = [[deci(entier), degre.pop(random.randrange(len(degre)))] for i in range(long+1)] p = Polynome(p, "x") if len(p) == 1 and Polynome.degre(p) == 0: p = p[0][0] if p < 0: p = "(" + str(p) +")" else: p = str(p) else: p = repr(p) return p