Discuss / Python / 为什么我的第一个测试计算出的结果不对,二别的方程能得到正确的结果?

为什么我的第一个测试计算出的结果不对,二别的方程能得到正确的结果?

Topic source
# -*- coding: utf-8 -*-

import math

def quadratic(a, b, c):
    B = (b * b - 4 * a * c)
    if B >= 0:
        x1 = (-1*b + math.sqrt(B)) / 2*a
        x2 = (-1*b - math.sqrt(B)) / 2*a
        return x1,x2
    else:
        print("It has't interger results")    
print(quadratic(2, 3, 1)) 
print(quadratic(1, 3, -4))

为什么我第一个输出得到的结果是-2.0 -4.0 (正确的应该是-0.5 -1.0) 而第二个得到的结果确是正确的1.0 -4.0

已经解决问题,除法的时候分子底下没加括号!!


  • 1

Reply