本文实例讲述了Python编程实现数学运算求一元二次方程的实根算法。分享给大家供大家参考
本文实例讲述了Python编程实现数学运算求一元二次方程的实根算法。分享给大家供大家参考,具体如下:
问题:
请定义一个函数quadratic(a, b, c),接收3个参数,返回一元二次方程:ax² + bx + c = 0的两个解。
实现代码:
#!/usr/bin/env python
# -*- coding: utf-8 -*-
import math
def quadratic(a,b,c):
if a == 0:
raise TypeError('a不能为0')
if not isinstance(a,(int,float)) or not isinstance(b,(int,float)) or not isinstance(c,(int,float)):
raise TypeError('Bad operand type')
delta = math.pow(b,2) - 4*a*c
if delta < 0:
return '无实根'
x1= (math.sqrt(delta)-b)/(2*a)
x2=-(math.sqrt(delta)+b)/(2*a)
return x1,x2
print(quadratic(2,3,1))
print(quadratic(1,3,-4))
运行效果图如下:
Python 数学运算 求 一元二次方程 实根 算法