How to include a conditional function inside a "for k = 1 : 200" loop?

I am trying to contain a function inside a loop as mentioned. The loop is "for k = 1 : ite" where ite=200. The function I am calling contains conditional statements such as "if k == 1," and "if k > 1,". It is returning an error saying that k is undefined when running the conditional statement of the function. Do I need to load the k variable from the original code inside the function?

1 Kommentar

Do I need to load the k variable from the original code inside the function?
Can you explain ?

Melden Sie sich an, um zu kommentieren.

 Akzeptierte Antwort

Evan
Evan am 30 Jul. 2013
Bearbeitet: Evan am 30 Jul. 2013
Yes, you need to pass the k value, and any other values used from the calling function, into your function that you call within the loop. Here's a simple example:
function my_function
a = rand(1,100);
ite = 100;
for k = 1:ite
m(k) = process(k);
end
end
function x = process(idx)
x = a(idx) > 0.5;
end

Weitere Antworten (0)

Kategorien

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

Gefragt:

am 30 Jul. 2013

Community Treasure Hunt

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

Start Hunting!

Translated by