循环分配疑问

时间:2011-03-31 15:45:03

标签: matlab

result在Matlab中的while循环中意味着什么

while (some_condition == 1)

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

end

1 个答案:

答案 0 :(得分:1)

唯一合理的选择似乎是result是在while循环之外定义的变量(数组或矩阵),并将值A赋给iteration result result 1}}。

[编辑] 第二个选项是:iteration是作为参数a = randi(10, 10, 2); sum(a) = 5 b = 6; sum(b) 的函数。虽然这在理论上是可行的,但没有意义,因为在MATLAB中为函数的结果赋值将创建一个具有该函数名称的变量,并因此 hide 该函数在变量。

E.g。尝试:

sum(b)

正如您将看到的,sum不会返回6(= b)。它现在返回数组{{1}}的第6个元素,在第2行代码中设置为5。访问该功能变得不可能。