2012-02-16 28 views
0

私はmatlabに読み込まれたテキストファイルを持っています。このテキストファイルには2つの列と22800行があります。私はネストされたforループを使っていくつかの計算を書いた。テキストファイルの50個の値ごとにこれらの計算をすべて行いたいと思います。つまり、私は外側のループが22800/50回動作するようにしたいが、これはコード化できない。親切に私を助けてください。 私のプログラムは以下の通りです。ネストされたループ - 1つのプログラム内で4つ以上のforループ

load('assignment_1.txt'); 
a=- 
b=- 
m=1; 
n=100; 
for R=m:n 
    if ---- 
     --- 
    else 
     --- 
    end 
    for --- 
     if --- 
      ---- 
     end 
     for ---- 
      if---- 
       ----- 
      else 
       ---- 
      end 

      m=m+100; 

      n=n+100; 

     end 

     y=polyfit(----); 

     f=polyval(---); 

     plot(-----); 

     axis([- - - - ]) 
    end 
end 
+1

一般的なルールとして、このようなネストループを含むMATLABコードの作成は避けてください。 MATLABの関数のほとんどは、 'for'ループを書く必要なしに、ベクトルまたは行列に対して機能します。 –

答えて

0

あなたはすべての50個の数字を飛ばして1から22800までのループにしたい場合は、次の構文を使用することができます:ループRの内部

for R = 1:50:22800 

end 

は値1,51,101,151,...,22751を持つことになります。 50,100,150,...,22800がある場合は、R = 50:50:22800の構文を使用します。このコロンの構文の詳細については、thisを参照してください。

関連する問題