Output each for loop iteration to separate arrays

1 回表示 (過去 30 日間)
mathman
mathman 2018 年 1 月 1 日
コメント済み: Star Strider 2018 年 1 月 1 日
I have a function which relies on a few inputs, all of these inputs will be the same for each iteration apart from one which will be changing. I want to output each iteration of the loop to a different array.
I've tried doing it using a cell array as below.
Here's an example of the code.
for b = [0:0.1:5]
cell_array{b} = function(a,b,c)
end
With this I get an error saying: 'Cell contents indices must be greater than 0' which I assume is because of the '0' in vector b. If I alter it to be:
for b = [0:0.1:5]
cell_array{1:51} = function(a,b,c)
end
I get the error saying: 'Expected one output from a curly brace or dot indexing expression, but there were 5 results.'
Is there a better way of getting each iteration to output separately?

採用された回答

Star Strider
Star Strider 2018 年 1 月 1 日
Try this:
fun = @(a,b,c) a + b - c; % Create Function
a = 3; % Create Data
c = 11; % Create Data
for b = 1:6
cell_array{b} = fun(a, b-1, c);
end
  4 件のコメント
mathman
mathman 2018 年 1 月 1 日
Apologies for that, it slipped my mind.
It did work though so thanks for that. Nice solution aswell.
Star Strider
Star Strider 2018 年 1 月 1 日
As always, my pleasure.

サインインしてコメントする。

その他の回答 (0 件)

カテゴリ

Help Center および File ExchangeLoops and Conditional Statements についてさらに検索

タグ

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by