0
在這個簡單的程序中,一個點對角地穿過陣列並從牆壁反彈。它觸及的每個像素都會改變顏色。雖然真循環意外停止
在我的TI 84+ CE上,無限while循環每次都會在同一個點過早停止。爲什麼?
0→X
0→Y
1→C
1→D
{11,20→dim([A]
For(E,1,20,1)
For(F,1,11,1)
0→[A](F,E)
End
End
{1,2→dim([B]
21→[B](1,1
21→[B](1,2
{1,2→dim([C]
12→[C](1,1
12→[C](1,2
ClrHome
ClrDraw
While 1
If X≠[B](1,2) and Y≠[C](1,2)
Then
Pxl-On(Y,X,RED
X+C→X
Y+D→Y
Else
If X≥[B](1,2)
Then
[B](1,1)-[B](1,2)→[B](1,2)
C1→C
End
If Y≥[C](1,2)
Then
[C](1,1)-[C](1,2)→[C](1,2)
D1→D
End
End
End
循環顯然停止時,「X」和「Y」的值是多少? 'X'和'Y'的預期值範圍是什麼? – alvits
嘗試使用'Lbl'和'Goto'來代替,看看是否給你不同的結果 –
我會打賭循環沒有停止,但If語句裏面的停止評估爲true。 – Timtech