Discuss / Python / 改进型作业

改进型作业

Topic source

哥温哥温

#1 Created at ... [Delete] [Delete and Lock User]

import math

def quadratic(*nums):

    if nums[0]==0:

        if nums[1]==0:

            if nums[2]==0:

                print('方程解为任意实数')

            else:

                print('方程无解')

        else:

            return -nums[2]/nums[1]

    else:

        if nums[1]**2-4*nums[0]*nums[2]>=0:

            delta=nums[1]**2-4*nums[0]*nums[2]

            x1=(-nums[1]+math.sqrt(delta))/(2*nums[0])

            x2=(-nums[1]-math.sqrt(delta))/(2*nums[0])

            return x1,x2

        else:

            print('方程无实数根')

# 测试:

if quadratic(2, 3, 1) != (-0.5, -1.0):

    print('测试失败')

elif quadratic(1, 3, -4) != (1.0, -4.0):

    print('测试失败')

else:

    print('测试成功')

s = input('请输入方程系数[a, b, c]:')

nums = eval(s)

print('result:',quadratic(*nums))


  • 1

Reply