我是一名高中生,我们需要做一个计算机编码工作,但我有一些困难,我试图在python 3.3.2上打印答案,但这不是我所期望的。我该如何改变这个问题?我搜索了脚本,但我仍然不知道脚本是什么...是否有人可以教我如何修复脚本?我尝试添加()但它仍然无法正常工作...... 给出的问题是enter image description here 我试着制作enter image description here的代码 但它说这是错的......我尝试了几次不同的脚本,但它没有用......
x=[1.0,2.0,3.0]
y=[1.0,3.0,4.0]
a=0
b=0
c=0
sumD=10
for n in range (1000):
testA = -5.0+n/1000
for k in range (1000):
testB = -5.0+k/1000
for z in range (1000):
testC = -5.0+z/1000
testSum=(testA*x[0]**2+testB*x[0]+testC-y[0])**2+(testA*x[1]**2+testB*x[1]+testC-y[1])**2+(testA*x[2]**2+testB*x[2]+testC-y[2])**2
if testSum < sumD:
a=testA
b=testB
c=testC
a
b
c
代码应该告诉我什么是a,b和c,然后我将能够插入ax ^ 2 + bx + c(该功能),我将需要检查我在网站上的工作。问题是它没有显示a,b和c。我不知道如何解决它!
我试着这样做:
print a
print (a)
print "a"
a
那些不起作用
答案 0 :(得分:1)
我不确定你要做什么,因为我不太了解你的问题。
不幸的是,代码运行速度非常慢。 (完成大约需要75分钟。)Mabey你应该寻找一个不同的解决方案。 我将其复制出来以获得图像并得到:
x = [1.0, 2.0, 3.0]
y = [1.0, 3.0, 4.0]
a = 0
b = 0
c = 0
sumD = 10
for n in range(1000):
testA = -5.0 + n / 1000
for k in range(1000):
testB = -5.0 + k / 1000
for z in range(1000):
testC = -5.0 + z / 1000
testSum = (testA*x[0]**2+testB*x[0]+testC-y[0])**2+(testA*x[1]**2+testB*x[1]+testC-y[1])**2+(testA*x[2]**2+testB*x[2]+testC-y[2])**2
if testSum < sumD:
a = testA
b = testB
c = testC
print(a) #This is the correct syntax to use
print(b)
print(c)