import sys
for input in sys.stdin:
a,b,c=input.split()
t=float(b)**2-4*float(a)*float(c)
if t<0:
print('No real root')
elif t==0:
print('The same roots x= %d'%(float(b)**2-4*float(a)*float(c))
else:
print('Two different roots x1=%d ,x2=%d'%((float(-b)+sqrt(float(b)**2-4*float(a)*float(c)))/(float(a)*2),(float(-b)-sqrt(float(b)**2-4*float(a)*float(c)))/(float(a)*2))
import sys
for input in sys.stdin:
a,b,c=input.split()
t=float(b)**2-4*float(a)*float(c)
if t<0:
print('No real root')
elif t==0:
print('The same roots x= %d'%(float(b)**2-4*float(a)*float(c))
else:
print('Two different roots x1=%d ,x2=%d'%((float(-b)+sqrt(float(b)**2-4*float(a)*float(c)))/(float(a)*2),(float(-b)-sqrt(float(b)**2-4*float(a)*float(c)))/(float(a)*2))
給你2個建議
第一個是你可以把第三行寫成
a, b, c = list(map(float, input().Split()))
這樣就可以一次把型態轉float
不用每次要用都要轉一次
第二個建議是
你後面在求X的時候
可以把中間換成t
你前面的已經算好t了
就不用讓他再算一次