求ax2+bx+c=0方程的實根。a,b,c由鍵盤輸入. 解方程要考慮系數a等於零的情況。a等於零有兩種情況(b==0,b!=0),a不等於零有三種情況(delta>0、==0、<0),先計算得到根x1、x2,再輸出
輸入格式:
輸入三個數a,b,c。
輸出格式:
輸出方程的實根(保留兩位小數),如果方程有1個實根,則輸出根;如果方程有2個不等實根,則一起輸出(使用空格分開),先輸出較大根,后輸出較小根。 其余情況(如無實根等)則輸出No。
輸入樣例:
1 -3 2
輸出樣例:
2.00 1.00
import math a,b,c=map(int,input().split())#求ax2+bx+c=0方程的實根。a,b,c由鍵盤輸入. d = (b**2)-(4*a*c) if a == 0:#解方程要考慮系數a等於零的情況 if b!=0: print('{:.2f}'.format(-(c/b))) elif b==0: print('No') elif a != 0: if d>0: x1=((-b+math.sqrt(d))/(2*a)) x2=((-b-math.sqrt(d))/(2*a)) if x1>x2: print('%.2f'%(x1),end=' ') print('%.2f'%(x2)) elif x1<x2: print('%.2f'%(x2),end=' ') print('%.2f'%(x1)) elif d==0: print('{:.2f}'.format((-b-math.sqrt(b**2-4*a*c))/(2*a))) elif d<0 : print('No')