1

私は GW-BASIC コードを C# に変換していますが、BASIC 言語全般の経験は非常に限られています。IF...THEN...GOTO ステートメントの動作を理解しようとしています。たとえば、次のステートメントがあります。

85 IF M(3,1)>M(2,1) THEN 95
90 M(3,1)=M(3,1)+P2
95 Z1=R1*(90.567-41.685/M(2,3))

私の質問はこれです: 85 行目の条件が満たされない場合、95 行目のコードを実行しますか、それともスキップしますか?

どんな方向性でも大歓迎です...

4

4 に答える 4

4

はい、行 85 のブール条件の評価に関係なく、行 95 が実行されますが、行 85 が true と評価された場合、行 90 がジャンプされるため、実行されません。

于 2011-12-20T02:33:06.993 に答える
2

95 行目のコードが実行されます。then ステートメントにより、プログラムは 95 行目にジャンプし、その行を実行します。

これは次と同等です:

if ( M[3,1] <= M[2,1] ) {
   M[3,1] = M[3,1] + P2
}
Z1=R1*(90.567-41.685/M[2,3])
于 2011-12-20T02:32:10.130 に答える
1

どうやらコード スニペットには疑似 IF/ELSE 構造があり、ロジックは次のようになります。

行 85 の条件が満たされない場合、QBasic は 90、次に 95 を続行します。行 85 の条件が満たされる場合、QBasic は 95 以降を続行します。

于 2011-12-20T02:30:40.973 に答える
0

THEN 95の略でTHEN GOTO 95、実行ポインタを 95 行目にジャンプさせます。

REMLINE.BASは、Microsoft Basic Programs から行番号を削除するプログラムです。GOSUB、RETURN、GOTO、THEN、ELSE、RESUME、RESTORE、または RUN のいずれかのステートメントのオブジェクトではない行番号のみを削除します。

BaConBCXを使用すると、BASIC を C に変換できます。

于 2012-03-28T07:49:52.987 に答える