zoukankan      html  css  js  c++  java
  • Python求一元二次方程解

    题目:
    请定义一个函数 ’quadratic(a,b,c)‘,接收三个参数,返回一元二次方程:
    ax² + bx + c = 0
    的两个解。(提示:计算平方根可以调用math.sqrt()函数)

    import math
    def quadratic(a, b, c):
        if not isinstance(a, (int, float)):
            raise TypeError('a is not a number')
        if not isinstance(b, (int, float)):
            raise TypeErrot('b is not a number')
        if not isinstance(c, (int, float)):
            raise TypeError('c is not a number')
        derta = b * b - 4 * a * c
        if a == 0:
            if b == 0:
                if c == 0:
                    return '方程根是全体实数'
                else:
                   return '方程无根'
            else:
                x1 = -c / b
                x2 = x1
                return x1, x2
        else:
            if derta < 0:
                return '方程无根'
            else:
                x1 = (-b + math.sqrt(derta)) / (2 * a)
                x2 = (-b - math.sqrt(derta)) / (2 * a)
                return x1, x2
    print(quadratic(2, 3, 1))
    print(quadratic(1, 3, -4))
    

      

  • 相关阅读:
    HDU 1058
    Codeforces 349C
    HDU 2602
    HDU 2571
    HDU 2955
    HDU 2084
    HDU 1003
    HDU 1506 & 1505
    POJ 1854
    HDU 2095
  • 原文地址:https://www.cnblogs.com/sisul/p/8407334.html
Copyright © 2011-2022 走看看