Discuss / Python / share my homework

share my homework

Topic source

郑男6

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

-- coding: utf-8 --

import math def quadratic(a, b, c): if not (isinstance(a,(int,float)) and isinstance(b,(int,float)) and isinstance(c,(int,float))): raise TypeError('bad operand type') if a==0: return "此方程非一元二次方程" if b2-4ac<0: return "此一元二次方程无实数根" if b2-4ac==0: return "此方程有两个相同根" else : x=(-b+math.sqrt(b2-4ac))/(2*a) y=(-b-math.sqrt(b2-4ac))/(2*a) return x,y a=int(input('请输入系数a:')) b=int(input('请输入系数b:')) c=int(input('请输入系数c:')) print('%dx^2+%dx+%d=0的根是:%s'%(a,b,c,quadratic(a, b, c)))

最后print根那里少了个%s 会报错吧 print('%dx^2+%dx+%d=0的根是:%s%s'%(a,b,c,quadratic(a, b, c)))

郑男6

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

回复楼上,不会报错。 一个%s就可以了。因为如果有2个不同的实根,会返回一个元组,而%s可以格式化任意数据类型。 而我也试过了,没有问题,不会报错。


  • 1

Reply