2016-11-30 17 views
0

forループを0から180に移動してから-180に戻したいとします。私は以下を試した:forループをMATLABの2つの配列に渡す方法

for a=0:1:180 && 179:-1:-180 

これはMATLABでは不可能です。

私は&&||ステートメントを使用しようとしましたが、どちらも動作しません。私は2つの配列を組み合わせる他の方法を知らない。何か案は?

+0

本当に*ほしいものを記述してください。それは0から180まで行くループですか?そして再び-180まで戻りますか? '&&'演算子は論理積であり、スカラー値に対してのみ機能しますので、あなたが書いたことは間違いありません。 – hbaderts

+0

私は0から180まで、そして180から-180まで行きたいですが、どうすればいいですか? – abbxucy11

答えて

1

&&および||オペレータは誤解しています。あなたが望むものは、次のとおりです:

0から180まで1のステップで進み、180から-180まで-1のステップで進みます。任意の二つの文ABためしかし

、コマンドA && Bは、以下のん(AB両方がスカラー値であることが必要です!):

trueを返し、AB両方の場合そうでなければFalseを返します。

あなたが最初の配列を通って、その後、あなたの二番目の配列を通過したい一方でこれは、論理 ANDです。どちらものいずれかの種類ですが、&&を目的に使用することはできません。あなたがfor a=0:180を呼び出すとき

は今、MATLABは、以下のん:

  1. [0, 1, 2, ..., 180]あるベクトル0:180を作成します。
  2. 1)で作成したベクトルの各要素のループ内のすべてのコンテンツを実行します。

したがって、数字[0, 1, 2, ..., 179, 180, 179, 178, ..., -179, -180]を含む配列を作成します。 によって配列[0:180][179:-1:-180]を連結してを行うことができます。 documentationにあるMATLABの連結についてお読みください。ですから、長い話は短いですが、ループのためには

for a=[0:180, 179:-1:-180] 
関連する問題