# -*- coding: utf-8 -*- import math def quadratic(a, b, c): if not (isinstance(a, (int, float)) and isinstance(b, (int, float)) and isinstance(a, (int, float))): raise TypeError("bad operand type") delta = pow(b, 2) - 4 * a * c if delta > 0: x1 = (-b + math.sqrt(delta))/(2 * a) x2 = (-b - math.sqrt(delta))/(2 * a) return x1, x2 elif delta == 0: return -b/(2 * a) else: return None # 测试: print('quadratic(2, 3, 1) =', quadratic(2, 3, 1)) print('quadratic(1, 3, -4) =', quadratic(1, 3, -4)) if quadratic(2, 3, 1) != (-0.5, -1.0): print('测试失败') elif quadratic(1, 3, -4) != (1.0, -4.0): print('测试失败') else: print('测试成功')
Sign in to make a reply
chengww5217