Discuss / Python / 作业

作业

Topic source

花泽的类

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

-- coding: utf-8 --

import math

def quadratic(a, b, c):

#判断三个参数的类型是否错误
if not (isinstance(a,(int,float)) and isinstance(b,(int,float)) and isinstance(c,(int,float))):
    raise TypeError('bad operand type')

#判断a是否等于0
if a==0:
    raise TypeError('a不能等于0')

import math
h=b**2-4*a*c

#判断根的个数,然后返回函数值;
if h>0:
    print('有2个不同的根')
    x1=(-b+math.sqrt(h))/(2*a)
    x2=(-b-math.sqrt(h))/(2*a)
    return x1,x2
elif h==0:
    print('有2个相同的根')
    x=-b/(2*a)
    return x
else:
    print('无解')
    return None   #可省略

print(quadratic(2, 3, 1)) # 2根 print(quadratic(1, 2, 1)) # 同根 print(quadratic(1, 1, 1)) # 无根

print(quadratic(0, 1, 1)) # 报错:a不能等于0


  • 1

Reply