0

私は Karel でプログラムを書いています。これは基本的に Pascal に Fanuc ロボットのモーション コマンドを加えたものです。forループで200回ループするなど、私のコードは機能します。

ここで、除外リストを追加したいので、疑似コードで" "I=1 から 200 の場合、私が除外リストにない限り実行します"

リストは次のとおりです。「整数の配列除外[5]」私のコードは次のとおりです。

for I=1 to 200 DO
  FOR j =1 TO 5 DO
     IF exclude[j]=i THEN
     GO TO end_it
  ENDFOR
  bunch of code
  endit::
ENDFOR

これで、スタック オーバーフローが発生する理由がわかりました。for ループから飛び出しています。しかし、私は自分の問題を解決する方法を思い付くことができません。配列の 5 つのメンバーを個別にチェックすることはできますが、同じことを再度追加する必要がある 2 番目 (3 番目) の for ループがあるため、コードを短く簡潔に保つようにしています。

どんな助けでも大歓迎です!

4

2 に答える 2