コミュニティアイコン プチコン 非公式コミュニティ プレイ日記

アバター
こういち ◆ou0jbJnEJ0Kb
2019/1/19 11:15
REPEAT
 I=I-1
UNTIL !I
より
WHILE I
 I=I-1
WEND
の方が速いのか。
まぁ当然と言えば当然か…

コメント

アバター
say 2019/1/19 12:16 ◆1nbKtD/tFu04
考えたこともなかったw
試してみたら確かにwhileのほうが速かったけど、なんで?
理屈としては
'while〜wend
@WHILE:IF I THEN @BREAK
GOTO @WHILE
@BREAK

'repeat〜until
@REPEAT
IF !I THEN @REPEAT

て感じだろうから、速度的に差はないと思うんだけど…
アバター
say 2019/1/19 12:23 ◆1nbKtD/tFu04
あ、!付けたら少し遅くなるのか
アバター
おちゃめ 2019/1/19 23:30 ◆jH1opV6FnGyx
UNTIL !Iの部分をUNTIL I==0と記述すればWHILE〜WENDよりも速くなりますね。
しかし、条件付きループはGOTOが最速なのです。

I=0
@L
I=I+1E-6
ON I GOTO @L

これで100万回ループになります。

最速になるような記述をした場合はループの速度は、FOR〜NEXT < WHILE〜WEND < REPEAT〜UNTIL < ON〜GOTO となります。(これはループ処理に関する部分のみの速度なのでON〜GOTOはループ内の処理によってはREPEAT〜UNTILと逆転することもある)
プチコン3号のFOR〜NEXTは非常に遅いです。

コメントを書く

この投稿にはコメントできません。

- WEB PATIO -