Discuss / Python / 交作业

交作业

Topic source

囧灰黄

#1 Created at ... [Delete] [Delete and Lock User]
# -*- coding: utf-8 -*-

import math

def quadratic(a, b, c):
    k=math.sqrt(int(b*b-4*a*c))
    x=(-b+k)/(2*a)
    y=(-b-k)/(2*a)
    return x,y
# 测试:
print(quadratic(2, 3, 1)) # => (-0.5, -1.0)
print(quadratic(1, 3, -4)) # => (1.0, -4.0)

囧灰黄

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

好像这样数据类型的检查就没有了意义

# -*- coding: utf-8 -*-
import math

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

def quadratic(a,b,c):
    if not isinstance(a,(int,float)):
        raise TypeError('aaaa')
    if not isinstance(b,(int,float)):
        raise TypeError('bbbb')
    if not isinstance(c,(int,float)):    
        raise TypeError('cccc')
    k=math.sqrt(float(b*b-4*a*c))
    if a==0:
        x=(-b)/c
        return x
    elif k>=0:
        x1=(-b+k)/(2*a)
        x2=(-b-k)/(2*a)
        return x1,x2
    else:
        return '方程无实数解'

print(quadratic(a,b,c))

  • 1

Reply