Цикл присваивания сомнений - PullRequest
0 голосов
/ 31 марта 2011

Что означает result внутри цикла while в Matlab

while (some_condition == 1)

   A = somefunc();
   result(iteration) = A;
   iteration = iteration + 1; 
   ...

end

1 Ответ

1 голос
/ 31 марта 2011

Единственный разумный вариант - result - это переменная (массив или матрица), определенная вне вашего цикла while, и вы присваиваете значение A для индекса iteration из result.

[Edit] Второй параметр: result - функция, принимающая в качестве аргумента iteration.Хотя это теоретически возможно, это не имеет смысла, поскольку присвоение значения результату функции в MATLAB создаст переменную с именем этой функции и в результате hide этой функции в области видимостипеременная.

Например, попробуйте:

a = randi(10, 10, 2);
sum(a) = 5
b = 6;
sum(b)

Как вы увидите, sum(b) не возвращает 6 (= b).Теперь он возвращает 6-й элемент массива sum, который был установлен в 5 во 2-й строке кода.Доступ к функции просто стал невозможным.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...