3
ループ本体がスキップされたときに、BASICはどのようにして順序が狂ったNEXTステートメントを見つけるのですか?
WABACマシン、Shermanを設定します。この質問は、BASIC全般、およびMicrosoftのBASIC-80に関するものです。特にです。オールドスクールベーシック。行番号付き。 ループ本体が実行されておらず、NEXTステートメントが順不同である場合、旧式のBASICインタープリターはFOR ... NEXTループをどのように処理しますか(あるいは、そうしましたか)。 以前からの順不同のNEXTステートメント: これは、David H. Ahlの「101 Basic Computer Games」からのゲームAwariのサブルーチンです。 200 K=M:GOSUB 600 205 E=0:IF K>6 THEN K=K-7 210 C=C+1:IF C<9 THEN F(N)=F(N)*6+K 215 FOR I=0 TO 5:IF B(I)<>0 THEN 230 220 NEXT I 225 RETURN 230 FOR I=7 TO 12:IF B(I)<>0 THEN E=1:RETURN 235 GOTO 220 そしてここでは、編集されたフロー制御以外のすべてのものです: 200 …