How can I write a loop that performs a function to each element in a vector?

5 Ansichten (letzte 30 Tage)
say I have a vector with numbers 234 456 687 643 23 45 and have a function which can only take one value at a time. How would I loop to call the function to each one of the values individually?
  1 Kommentar
Ameerh
Ameerh am 4 Okt. 2024
Write a program in MATLAB using for loop read all the elements of the vector and print them.

Melden Sie sich an, um zu kommentieren.

Akzeptierte Antwort

Star Strider
Star Strider am 3 Dez. 2017
Ideally, you would write your function so that it would allow vectorized operations.
If that is not an option try something like this:
Result = zeros(1:length(vector)); % Preallocate
for k1 = 1:length(vector)
Result(k1) = YourFunction(vector(k1));
end
The length call could be replaced by size (with the appropriate dimension argument), or numel. They all have their appropriate uses, depending on your array.
  7 Kommentare
Ameerh
Ameerh am 4 Okt. 2024
Write a program in MATLAB using for loop read all the elements of the vector and print them.
Star Strider
Star Strider am 4 Okt. 2024
@Ameerh — Do exactly that. If you have problems, post a new Question with your code and describe the problem you are having with it.
I will not do your homeework for you!

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (1)

Stephen23
Stephen23 am 3 Dez. 2017
Bearbeitet: Stephen23 am 3 Dez. 2017
Either use a for loop or arrayfun:
vec = [234,456,687,643,23,45];
arrayfun(@fun,vec)
You might also like to read this:
  3 Kommentare
Stephen23
Stephen23 am 3 Dez. 2017
@Eden Crespo: your function returns non-scalar output arguments. Simply read the error message and do exactly what it states, that will solve the problem:
arrayfun(@fun,vec,'UniformOutput',false)
Eden Crespo
Eden Crespo am 3 Dez. 2017
Sorry I am very new to this. Ill try It thank you!

Melden Sie sich an, um zu kommentieren.

Kategorien

Mehr zu Loops and Conditional Statements finden Sie in Help Center und File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by