关于python2.7的问题?请问这段代码哪里出错了呢?

2025-04-06 17:52:59
推荐回答(1个)
回答1:

我来回答吧。你的程序中有几个地方写的不正确,我改了一下现在可以运行了(我的编译环境是Python3.2)

#!/usr/bin/env python
# -*- coding: utf8 -*-
print('这是求一个一元二次方程的根的程序,您只需输入各项的系数,便可以得出方程的根,如若需要退出,请输入任意字母。')
s='ax*x+bx+c=0'
s=s.strip()
print (s)
a=0
b=0
c=0
def yunsuan(a,b,c):
    a=float(input("a:"))
    b=float(input("b:"))
    c=float(input("c:"))
    d=0
    e=0
    f=0
    g=0
    h=0
    i=0
    j=0
    k=0
    j = b * b
    k = 4 * a * c
    d = j - k
    if d < 0:
        print ('此方程无实数根。')
        return(yunsuan(a,b,c))
    else:
        e=d**(1./2)
        f = e - b
        g = -e - b
        h = f / a / 2
        i = g / a / 2
        print ('第一个根:x=%s第二个根:x=%s' % (h,i))
        return(yunsuan(a,b,c))
print (yunsuan(a,b,c))
input()

结果: