#-*- coding:utf-8 -*- #时间:2020/3/30 MON #内容:定义函数:求一元二次方程的解 import math #导入math函数包 def quadratic(a,b,c): #定义quadratic(a,b,c) if not isinstance(a,(int,float)) and isinstance(b,(int,float)) and isinstance(c,(int,float)): #检查a,b,c是否为int和float raise TypeError('参数不是正确的类型') #不是就报错,函数终止 SQ=b**2 - 4 * a *c #赋值SQ=根号下的内容 if SQ < 0: #SQ < 0,则无法开根号,故方程无解 return #返回 None else: #SQ >= 0,执行 x= ((-b + math.sqrt(SQ))/(2 * a),(-b - math.sqrt(SQ))/(2 * a)) #二次方程求解公式 return x #返回解x # 测试: print('quadratic(2, 3, 1) =', quadratic(2, 3, 1)) print('quadratic(1, 3, -4) =', quadratic(1, 3, -4)) print('quadratic(1, 1, 1) =', quadratic(1, 1, 1)) if quadratic(2, 3, 1) != (-0.5, -1.0): print('测试失败') elif quadratic(1, 3, -4) != (1.0, -4.0): print('测试失败') elif quadratic(1, 1, 1) != None: print('测试失败') else: print('测试成功')
Sign in to make a reply
北极小白熊2