請問for迴圈跑出來的結果為什麼會這樣?

  •   166 
  • 最後發表   拉不拉多  2021 七月 14
拉不拉多 發文於   2021/07/13

vars: n(0),x(0),y(0);

for n=1 to 10

begin

if n<5 then

x+=n

else

y+=n;

print(x,y);

 

end;

執行結果

49651.000000 223425.000000 

49653.000000 223425.000000 

49656.000000 223425.000000 

49660.000000 223425.000000 

XQ小幫手 發文於   2021/07/14

Hello 拉不拉多,

 

由於您變數 x, y  沒有重置,所以每次腳本運作時就持續往上加。

您可以將腳本修改為:

vars: n(0),x(0),y(0);

x=0;

y=0;

for n=1 to 10 begin

    if n<5 then x+=n else y+=n;

    print(x,y);

    end;

這樣印出來的結果就會是:

1.000000 0.000000 

3.000000 0.000000 

6.000000 0.000000 

10.000000 0.000000 

10.000000 5.000000 

10.000000 11.000000 

10.000000 18.000000 

10.000000 26.000000 

10.000000 35.000000 

10.000000 45.000000 

  • 按讚來自於
  • ryanxo162
發表回覆
Close