题目描述
求方程y=ax2+bx+c的根,用三个函数分别求当b2−4ac大于0、等于0、和小于0时的根,并输出结果。从主函数输入a、b、c的值。
输入
a b c
输出
一元二次方程的俩个根 "x1=?x2=?"
样例输入
4 1 1
样例输出
x1=-0.125+0.484i x2=-0.125-0.484i
import math
def fun1(a,b,c,n):
x1=(-b+n**0.5)/(2*a)
x2=(-b-n**0.5)/(2*a)
print(f"{x1:.6f}{x2:.6f}")
def fun2(a,b):
x=(-b)/(2*a)
print(f"{x:.6f}{x:.6f}")
def fun3(a,b,c,n):
shi = -1 * b/ (2 * a)
xu = math.sqrt(-1 * n) / (2 * a)
print(f'x1={shi:.3f}+{xu:.3f}i x2={shi:.3f}-{xu:.3f}i')
def main():
a,b,c=map(int,input().split())
n=b**2-4*a*c
if n>0:
fun1(a,b,c,n)
if n==0:
fun2(a,b)
if n<0:
fun3(a,b,c,n)
if __name__ == '__main__':
main()
Python实现一元二次方程根计算:实数与复数解,
该文章介绍了如何使用Python编写函数,根据判别式b^2-4ac的值,分别计算一元二次方程的实根和复数根。函数`fun1`处理判别大于0的情况,`fun2`处理判别等于0,`fun3`处理判别小于0,以`main`函数为核心,接收用户输入的a、b、c值并输出结果。
1032

被折叠的 条评论
为什么被折叠?



