1.红色处是有误的,个人先进行排错
2.根据书中提示,结合其他学习者经验排错
排除错误,完成主函数嵌套函数,完成计算器的代码
代码如下:
def args_ABC():
try:
A=float(input("请输入一个实数"))
B=float(input("请输入一个实数"))
C=float(input("请输入一个实数"))
return A,B,C # 返回一次到位
except: #一个重新输入的机会
print("Please input a number")
return args_ABC()
# 深度思考之后,脑海中有程序的执行框架
#这里我们想要去返回ABC的系数给方程组
#return args_ABC()
def get_delta(A, B, C):
# 计算delta,返回delta很重要
return B**2-4*A*C
#计算根解的情况
def solve():
A,B,C=args_ABC() #后文中有使用,所以就先调用上文定义的. ABC的赋值很直白
delta1=get_delta(A,B,C) #ABC 的引用有问题,不论是delta的引,还是ABC的引用都要在新的函数中重新去获取
if delta1 <0: #rename 无果,直接ignore
print("No solable answer!")
elif delta1==0:
x0=B/(-2*A)
print("x1=x2= %s"%x0)
else:
x1= (-B+ delta1**0.5) /2*A
x2= (-B- delta1**0.5) /2*A
print("x1= %s"%x1)
print("x2= %s"%x2)
def main(): # 率先构造出主函数来
solve()
if __name__ == '__main__': #python里面的缩进要求严格,必须找准对应的结构
main()
总结:1.先思考清楚,函数之间的嵌套关系
2.从主函数开始写起来
3.重视规范就是为自己节约时间