用Python做一元二次方程計(jì)算器
用Python做二次方程的計(jì)算器需要用到math庫(kù)中的sqrt()函數(shù)
首先導(dǎo)入庫(kù)
from math import sqrt
再寫(xiě)好專門解方程的函數(shù)
def jfc(a,b,c):
? ? global x
? ? d = b**2-4*a*c
? ? if d < 0:
? ? ? ? x = ['沒(méi)有實(shí)數(shù)根','沒(méi)有實(shí)數(shù)根']
? ? else:
????????x = [(0-b+sqrt(d))/(2*a),(0-b-sqrt(d))/(2*a)]
然后讓使用者輸入方程的二次項(xiàng)系數(shù),一次項(xiàng)系數(shù)和常數(shù)
a = float(input('請(qǐng)輸入二次項(xiàng)系數(shù)'))
while a == 0:
? ? print('您輸入的二次項(xiàng)系數(shù)為0,程序出錯(cuò),請(qǐng)重新輸入')
? ? a = float(input('請(qǐng)輸入二次項(xiàng)系數(shù)'))
b = float(input('請(qǐng)輸入一次項(xiàng)系數(shù)'))
c = float(input('請(qǐng)輸入常數(shù)項(xiàng)'))
最后解方程并報(bào)出結(jié)果
jfc(a,b,c)
if x[0] == '沒(méi)有實(shí)數(shù)根':
? ? print('您輸入的方程沒(méi)有實(shí)數(shù)根')
else:
? ? print('您輸入的方程的兩個(gè)根分別為'+str(x[0])+'和'+str(x[1]))
可能有錯(cuò)誤,如有錯(cuò)誤,還請(qǐng)大家多多諒解
注:
二次方程求根公式:
