Формирование векторов из одного назначенного значения - PullRequest
0 голосов
/ 07 мая 2010

У меня есть набор значений, которым присваивается одна и та же переменная из-за того, что она несколько раз проходит через цикл for, например:

d = 3.44434
d = 2.4444
d = 2.7777

Как поместить их все в вектор

Ответы [ 2 ]

2 голосов
/ 07 мая 2010

Если вы заранее знаете количество значений, вы можете ускорить процесс (если имеется несколько элементов) путем предварительного выделения .

код

num_elements = 10;
vector = zeros(num_elements,1);
for i = 1:num_elements
   vector(i) = SomeFunction();
end

Если вы не знаете количество элементов перед запуском цикла,

код

vector = [];
some_condition = true;
while some_condition == true
   vector(end+1) = SomeFunction();
   some_condition = SomeConditionFunction();
end
1 голос
/ 07 мая 2010

Если вам нужен цикл для ваших операций, используйте ответ Джейкоба . В противном случае, если вы делаете относительно простую операцию, вы можете векторизовать. Например:

x=1:10; % input vector
rootofx=sqrt(x); % output vector

Операторы ./. * И. ^ Полезны, если вы хотите выполнять поэлементные операции.

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