Fork me on GitHub

一元二次方程解法的实现(Python)

请定义一个函数quadratic(a, b, c),接收3个参数,返回一元二次方程:
ax2 + bx + c = 0的两个解。
提示:计算平方根可以调用math.sqrt()函数
 
# -*- coding: utf-8 -*-
# ax2+bx+c.py
# @author   0yst3r
# @description   一元二次方程解法
# @created Wed Apr 10 2019 15:40:51 GMT+0800 (中国标准时间)
# @last-modified Fri Apr 12 2019 09:22:48 GMT+0800 (中国标准时间)
#
import math


def quadratic(a, b, c):
    if a == 0:
        if b == 0:
            if c == 0:
                print('方程有任意解')
            else:
                print('方程无解')
        else:
            x = -c / b
            print('方程有解:x=%.2f' % x)
    else:
        q = b * b - 4 * a * c
        if q > 0:
            x1 = (-b + math.sqrt(q)) / a / 2
            x2 = (-b - math.sqrt(q)) / a / 2
            print("一元二次方程的解为x1=%.2f,x2=%.2f" % (x1, x2))
            return ()
        elif q == 0:
            x1 = -b / a / 2
            x2 = x1
            print("一元二次方程的解相同,x1=x2=%.2f" % (x1))
            return x1, x2
        else:
            pass
            print("一元二次方程无解")
            return ()


print('input a,b,c :')
a = float(input('a:'))
b = float(input('b:'))
c = float(input('c:'))
q = quadratic(a, b, c)

  

 
运行结果:
 
 
 
 
 
 
 
 
 
 
 
 
 
 
posted @ 2019-04-10 17:00  0yst3r  阅读(9905)  评论(5编辑  收藏  举报
返回顶部