2012-05-24 6 views
0

Я хочу написать код, который даст мне матрицу [5x5], содержащую значения «ec» для каждого шага. Но здесь я могу только вернуть его последнее значение. Не могли бы вы мне помочь?Для цикла внутри цикла for?

Благодарим Вас за интерес

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 

ответ

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.

Замечание о циклах: вам следует избегать использования i в качестве счетчика, поскольку это предопределено как равное sqrt (-1), и если вы переназначите его, могут возникнуть проблемы. Добавление подчеркивания позволяет избежать этой проблемы.

+0

Упс - см. Мое редактирование. – andyras

Смежные вопросы