0

私はMatlabで次のように簡単なステートメントを作成しようとしていました。

if TF==1
  disp('One'), break
else continue
end
... ... ...
... ... ...

しかし、TFが1でなくても、コマンドを実行すると、スクリプトの残りの部分に続きません!! どんな助けもいただければ幸いです-ありがとう

4

1 に答える 1

3

ステートメントのcontinue意味は大きく異なります。forまたはwhileループのようなループ内ではcontinue、現在のラウンドをスキップして、ループ内の次の反復を続行するように指示します。したがって、を削除するcontinueと、期待する動作が表示されます。次に例を示します。

for k = 1 : 10
  if k == 4
    % skip the calculation in the case where k is 4
    continue
  end
  area = k * k;
  disp(area);
end

ループがで繰り返されるk == 4と、対応する正方形の面積を計算するブロックはスキップされます。この特定の例はあまり実用的ではありません。

ただし、10個のファイル名のリストがあり、このループ" for k = 1 : 10"で各ファイルを処理するとします。各ファイルを開こうとする必要がありますが、ファイルが存在しないことがわかった場合、それを処理する適切な方法は、小さな警告を出力continueしてから次のファイルに移動することです。

于 2013-01-12T04:49:47.083 に答える