编程语言
首页 > 编程语言> > Python实践(一)——计算一元二次方程 ax²+bx+c=0 的两个解

Python实践(一)——计算一元二次方程 ax²+bx+c=0 的两个解

作者:互联网

开辟一个新的系列文章——Python实践。我会在这一系列文章中记录下我学习的每一个Python程序,当做一个记录。

第一个代码是来自廖雪峰老师的网站定义函数里面的一道练习题。

'''
请定义一个函数quadratic(a, b, c),接收3个参数,返回一元二次方程 ax²+bx+c=0 的两个解。
'''

import math

def quadratic(a,b,c):
    if not isinstance(a,(int,float)):
        raise TypeError('bad operand type')
    if not isinstance(b,(int,float)):
        raise TypeError('bad operand type')
    if not isinstance(c,(int,float)):
        raise TypeError('bad operand type')

    if a == 0:
        return -c/b
    elif (b*b-4*a*c) >= 0:
        return (-b + math.sqrt(b*b-4*a*c))/(2*a),(-b - math.sqrt(b*b-4*a*c))/(2*a)
    else:
        print('bad params')

a = float(input('a = '))
b = float(input('b = '))
c = float(input('c = '))

print(a,'x*x+',b,'*x+',c,'x1,2=',quadratic(a,b,c))

标签:raise,Python,float,int,bad,一元二次方程,operand,ax,isinstance
来源: https://blog.csdn.net/qq_43752592/article/details/112072566