所以我编写了一个python代码,它使用二次公式为x求解。最后一切都解决了,除了标志例如,如果你想要因子x^2+10x+25,我的代码输出-5,-5,而答案应该是5,5。

def quadratic_formula():
    a = int(input("a = "))
    b = int(input("b = "))
    c = int(input("c = "))
    bsq = b * b
    fourac = 4 * a * c
    sqrt = (bsq - fourac) ** (.5)
    oppb = -b
    numerator_add = (oppb) + (sqrt)
    numerator_sub = (oppb) - (sqrt)
    twoa = 2 * a
    addition_answer = (numerator_add) / (twoa)
    subtraction_answer = (numerator_sub) / (twoa)
    print(addition_answer)
    print(subtraction_answer)

最佳答案

你的解决方案很好,让我们用sympy来证明它:

>>> (x**2+10*x+25).subs(x,-5)
0

如你所见,-5是根之一,而5
>>> (x**2+10*x+25).subs(x,5)
100

不是,现在如果你把你的两个根[-5,-5]展开如下:
>>> ((x+5)*(x+5)).expand()
x**2 + 10*x + 25

你可以看到结果很吻合。
实际上,还可以确认根是否正确显示二次方程:
python - 二次方程式混合-LMLPHP
我强烈建议你回顾一下The Quadratic Formula的概念,当它清楚的时候,回到代码中

关于python - 二次方程式混合,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/39338450/

10-13 03:45