2017-10-12 14 views
-2
for m = 60:70;      %for m's values in the range of 60<m<70%; 
    n((m-59))=m;     %create an array of m's values and store the array under n 
    y1((m-59)) = (14*35)/(m*9.8); %for m's current value, calculate y1 
    y2((m-59)) = 1-exp((-14*7)/m); %for m's current value, calculate y2 

このコードでは、次の行はどのようなものですか?誰も私にこのMATLABコードを説明できますか?

n((m-59))=m; 

誰でもこのことを説明できますか?

+0

'N((M-59))= m'' M-59'等しいN ''の値に割り当てる値 'M'を意味し、すなわち 'm-59'に等しい値に60を加えます。 'for m = 60:70'のforループと一緒に、' n 'のすべての値に1と10の間の60を加えます。 – kostek

+0

'' n'の値は '' m-59''ではありません。 'm-59 'によって与えられたインデックスで' n'の_entry_に移動します。 –

答えて

4

この平和のコードは、ループ内でn, y1, y2を計算します。この奇妙なインデックスは、n(1), n(2)などに値を割り当てるために使用されます。m=60からループを開始するので、結果はn(60)ではなくn(1)になります。n(m-59)が使用されます。

本当にループを使用して回避することができる:

n = [60:70]; 
y1 = (14*35)./(n.*9.8); 
y2 = 1-exp((-14*7)./n); 
関連する問題