我是一个新的编码器,试图学习如何使用输入,函数和matplotlib创建二次方程式绘图仪,只是为了获得编码+图形化的感觉。当我为函数“ quadraticEquation”提供所需的参数时(通过执行quadraticEquation(1,0,0),其中a = 1,b = 0,c = 0),我很高兴看到它按预期工作了,但是很快发现,当我尝试将输入合并到程序中时,它不再计算正确的y值。取而代之的是,y值很高,全部遵循由许多后跟零的模式(例如11111111110、111111111111110等)。
我尝试将打印功能放在程序的各个位置上,以查找程序出现问题的地方,看来在QuadraticEquation(a,b,c)块之前它可以正常工作,但是我不确定是什么出问题了。
import matplotlib.pyplot as plt
xlist = []
ylist = []
def quadraticEquation(a, b, c):
for x in range(-50, 51):
y = a*(x**2)+b*x+c
xlist.append(x)
ylist.append(y)
print(xlist)
print(ylist)
plt.plot(xlist, ylist)
plt.show()
a = input("a = ")
b = input("b = ")
c = input("c = ")
print(a)
print(b)
print(c)
quadraticEquation(a, b, c)
它应该列出从-50到50的x值(正确执行),但是y值是['111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111