Output each for loop iteration to separate arrays

1 visualizzazione (ultimi 30 giorni)
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?

Risposta accettata

Star Strider
Star Strider il 1 Gen 2018
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 Commenti
mathman
mathman il 1 Gen 2018
Apologies for that, it slipped my mind.
It did work though so thanks for that. Nice solution aswell.

Accedi per commentare.

Più risposte (0)

Categorie

Scopri di più su Loops and Conditional Statements in Help Center e File Exchange

Tag

Community Treasure Hunt

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

Start Hunting!

Translated by