0

各ステップの「ec」の値を含む[5x5]行列を取得するコードを記述したいと思います。しかし、ここでは最後の値しか返すことができません。手伝っていただけませんか?

ご関心をお寄せいただきありがとうございます

R = [0.13, 0.131, 0.132, 0.133, 0.134];
k = [1, 1.5, 2, 2.5, 3];
a = 3*60*6/1000;
for i=R
ec = 30 * (i*a + i*a*k/100)
endfor
4

1 に答える 1

0

あなたは次のようなものが欲しいようです

ec = zeros(5);
R = [0.13, 0.131, 0.132, 0.133, 0.134];
k = [1, 1.5, 2, 2.5, 3];
a = 3*60*6/1000;
for i_=1:length(R)
    for j_=1:length(k)
        ec(i_,j_) = 30 * (R(i_)*a + R(i_)*a*k(j_)/100);
    end
end

私があなたの質問について間違えない限り。これにより、5x5の行列が返されecます。

forループに関する注意:iこれはsqrt(-1)と等しいと事前定義されており、再割り当てすると問題が発生する可能性があるため、カウンターとしての使用は避けてください。アンダースコアを追加すると、この問題を回避できます。

于 2012-05-24T20:11:13.633 に答える