Discuss / Python / 大佬再帮忙看看

大佬再帮忙看看

Topic source

import math

def quadratic(a,b,c):

    i=b**2+4*a*c

    if i>0:

        x1=(-b+math.sqrt(i))/2*a

        x2=(-b-math.sqrt(i))/2*a

        print('方程有两个不同的解:' , x1,x2)      

    elif i==0:

        x1=(-b+math.sqrt(i))/2*a

        x2=(-b-math.sqrt(i))/2*a

        print('方程有两个相同的解:', x1,x2)        

    else:

        print('方程无解')

print(quadratic(1,-2,55))

终端输出的结果是

方程有两个不同的解: 8.48331477355 -6.48331477355

None

不明白为什么会出现 None?

糊涂_半生

#2 Created at ... [Delete] [Delete and Lock User]

if i > 0 : 

else: 的意思是if i = 0: if i < 0 

此时输出 无解其实是不成立的

还有/2*a是不可以的,要括号起来,四则运算除法和乘法是没有先后的

print输出格式也是不对的

print(‘有且有2个根 %.2f,%.2f’ % (x1,x2))

i错了,应该是-不是+


  • 1

Reply