Matlab петли для функции
Вопрос
Я пытаюсь сделать петлю, чтобы переделать функцию Matlab 1000 раз. Вот программа
d = unifrnd (0,10,[10,1]);
c = d.^(-2);
a = round(unifrnd(0,1,[1,10]);
e = a*c
btotal = e+1
SIR = 1/btotal
Я хочу итерации этой функции в 1000 раз, каждый раз, когда значение SIR будет варьироваться из -за генерируемого случайного числа. Для каждой итерации я хочу, чтобы значение сэра было собрано вместе (суммировано), а в конце 1000 -й итерации - найти среднего сэра (среднее).
Спасибо за помощь
Решение
Код ниже реализует то, что вы описали:
Gensir.M
function SIR = genSIR()
d = unifrnd (0,10,[10,1]);
c = d.^(-2);
a = round(unifrnd(0,1,[1,10]));
e = a*c;
btotal = e+1;
SIR = 1/btotal;
end
Основная программа
N = 1000;
SIR = zeros(N,1);
for i=1:N
SIR(i) = genSIR();
end
s = sum(SIR)
m = mean(SIR)
Хотя ваша функция может быть упрощена ...
Не связан с StackOverflow