求解Python一元二次方程问题

输入系数a,b,c,解方程ax2+bx+c=0,注意:根据b2-4ac的值,判断根的个数是无实根,还是一个实根,还是两个实根,并求解实根。

参考GPT和自己的思路:

好的,对于这个问题,我们可以使用Python来求解一元二次方程。具体步骤如下:

  1. 接收用户输入的参数a、b、c,可以使用input函数获取用户输入。
  2. 计算判别式delta = b*2 - 4a*c,通过delta的值来判断方程有无实根、有一个实根还是两个实根。
  3. 根据delta的值,分别计算实根,并将结果输出。

下面是针对这个问题的Python代码实现:

a = float(input("请输入一次项系数a:"))
b = float(input("请输入二次项系数b:"))
c = float(input("请输入常数项系数c:"))

delta = b**2 - 4*a*c

if delta < 0:
    print("该方程无实根")
elif delta == 0:
    x = (-b) / (2*a)
    print("该方程有一个实根,x =", x)
else:
    x1 = (-b + (delta)**0.5) / (2*a)
    x2 = (-b - (delta)**0.5) / (2*a)
    print("该方程有两个实根,x1 =", x1, ",x2=", x2)

这段代码可以接收用户输入的系数a、b、c,然后判断方程的根数并计算实根。注意,由于一元二次方程可能有两个实根,因此在计算实根时应该分别计算两个根并输出。

人工回答

import math
def quadratic(a,b,c):
    key=b**2-4*a*c
    if key>0:
        x1=(-b+math.sqrt(key))/2*a
        x2=(-b-math.sqrt(key))/2*a
    if key==0:
        x1=-b/2*a
        x2=x1
    if key<0:
        print('方程无解')
        return(None,None)
    return (x1,x2)
print(quadratic(1,3,-4))

不知道你这个问题是否已经解决, 如果还没有解决的话:

如果你已经解决了该问题, 非常希望你能够分享一下解决方案, 写成博客, 将相关链接放在评论区, 以帮助更多的人 ^-^