Python3 在 for 循环中转换为 TI Basic Store 函数很奇怪(斐波那契数列)
Python3 translating to TI Basic Store function in for loop being weird (Fibonacci's sequence)
我刚刚将斐波那契数列从 python3 转换为 TI Basic,但是当我尝试对 python 中的迭代器变量执行类似于“+=”运算符的函数时,它的行为有点奇怪我在哪里使用商店功能。
下面是我的 TI 代码:
Input "Enter number of terms: ",N
0→A
1→B
0→I
If N≤0:Then
Disp "Please enter a positive integer"
End
If N=1:Then
Disp "Fibonacci sequence upto",N
Else:
Disp "Fibonacci sequence:"
For(I,0,N-1)
Disp A
A+B→C
B→A
C→B
I+1→I
End
End
当我输入 3 时,输出为:
0
1
而不是
0
1
1
如果我删除或更改此行,代码将起作用:
I+1→I
至
I→I
为什么这会导致 for 循环忽略一次迭代而不是从这次迭代开始?
下面是对应的python代码:
#Fibonacci Sequence
N = int(input("Enter number of terms: "))
A= 0
B = 1
I = 0
if N <= 0:
print("Please enter a positive integer")
if N == 1:
print("Fibonacci sequence upto",N)
else:
print("Fibonacci sequence:")
for I in range(N):
print(A)
C = A + B
A = B
B = C
I += 1
(我知道 I += 1 是不必要的,但这让我很好奇为什么它在 TIBasic 语言中不起作用)
原python斐波那契数列代码:
https://www.programiz.com/python-programming/examples/fibonacci-sequence
ti basic 中的 for 循环通过执行 i = i+1 来迭代 i。
python 中的 for 循环将 i 设置为 range 生成的序列中的一个值。
也就是说
ti代码更类似于
for(let i=0; i<n; i++){
}
并且 python 脚本更类似于
let n = [1,2,4,5, ... n]
for(let ni=0; ni<n.length; ni++){
let i=n[ni];
}
您可以看到在上面的 python 示例中,'i' 如何在每次迭代时重置为列表中的值。在 ti 示例中,'i' 用于跟踪迭代状态。
我刚刚将斐波那契数列从 python3 转换为 TI Basic,但是当我尝试对 python 中的迭代器变量执行类似于“+=”运算符的函数时,它的行为有点奇怪我在哪里使用商店功能。 下面是我的 TI 代码:
Input "Enter number of terms: ",N
0→A
1→B
0→I
If N≤0:Then
Disp "Please enter a positive integer"
End
If N=1:Then
Disp "Fibonacci sequence upto",N
Else:
Disp "Fibonacci sequence:"
For(I,0,N-1)
Disp A
A+B→C
B→A
C→B
I+1→I
End
End
当我输入 3 时,输出为:
0
1
而不是
0
1
1
如果我删除或更改此行,代码将起作用:
I+1→I
至
I→I
为什么这会导致 for 循环忽略一次迭代而不是从这次迭代开始? 下面是对应的python代码:
#Fibonacci Sequence
N = int(input("Enter number of terms: "))
A= 0
B = 1
I = 0
if N <= 0:
print("Please enter a positive integer")
if N == 1:
print("Fibonacci sequence upto",N)
else:
print("Fibonacci sequence:")
for I in range(N):
print(A)
C = A + B
A = B
B = C
I += 1
(我知道 I += 1 是不必要的,但这让我很好奇为什么它在 TIBasic 语言中不起作用)
原python斐波那契数列代码: https://www.programiz.com/python-programming/examples/fibonacci-sequence
ti basic 中的 for 循环通过执行 i = i+1 来迭代 i。
python 中的 for 循环将 i 设置为 range 生成的序列中的一个值。
也就是说 ti代码更类似于
for(let i=0; i<n; i++){
}
并且 python 脚本更类似于
let n = [1,2,4,5, ... n]
for(let ni=0; ni<n.length; ni++){
let i=n[ni];
}
您可以看到在上面的 python 示例中,'i' 如何在每次迭代时重置为列表中的值。在 ti 示例中,'i' 用于跟踪迭代状态。