我提供了输入0
1
5
,答案应该是5
,但它没有显示...
,
帮我解决语法
a, b, c = [int(x) for x in input().split()]
ans = None
for i in range(3,c):
ans=a + (b*b)
a=b
b=ans
print ans
答案 0 :(得分:0)
对于i = 3,你的循环将运行两次,并且i = 4.
第一次运行:
ans = 0 + 1 * 1 #1
a = 1
b = 1
print(1)
第二轮:
ans = 1 + 1 * 1 # 2
a = 1
b = 2
print(2)
现在ans
是2.目前尚不清楚为什么你认为它应该是5。
答案 1 :(得分:0)
我认为这就是你要做的事情:
a, b, c = [int(x) for x in input().split()]
ans = None
for i in range(2,c):
ans=a + (b*b)
a=b
b=ans
print (ans)
请注意for i in range(2,c)
我将是2然后是3然后是4.它不会是5(= c)它会在c-1处停止。
编辑:如果您只想让循环运行c次,您可以说for i in range(c)
。这样它将运行i = 0,1,2,...,c-1。
答案 2 :(得分:0)
根据Python 3,打印命令语法是
print('your text')
print(variable)
print('your text ans: ',ans)
没有半圆形支架打印将无法正常工作。
请参阅:https://docs.python.org/3/whatsnew/3.0.html