0

我在互联网上环顾了一下,似乎找不到这个问题的答案。我想在 matlab 中声明一个向量,然后有一个 for 循环,每次我通过 for 循环时都会向向量添加一个元素。

这是我尝试过的,但似乎没有用

vector[];

for k = 1 ; 10
%calculate some value
%calculated value stored in temp variable
vector(k) = temp;
end

这不起作用。有谁知道如何解决这个问题?

4

2 回答 2

1

正如 ypnos 所说,您不需要预先声明向量变量。例如,如果您这样做:

vector(50) = 1;

MATLAB 将创建一个长度为 50 的向量,第 50 个值为 1。如果您想提高性能并希望事先创建一个适当大小的向量,请执行以下操作:

vector = zeros(10, 1);

您拥有的代码(只要您按照 ypnos 所说的那样修复循环)将起作用,除了您声明向量的方式,这是不正确的。我敢打赌您会收到错误消息:"Error: Unbalanced or unexpected parenthesis or bracket."您没有指定变量是否是 MATLAB 中的矩阵/向量。

于 2013-10-21T02:47:40.513 回答
0
vector = [vector; temp];

或者

vector(end+1) = temp;
于 2016-10-29T17:41:48.013 回答