How to include a conditional function inside a "for k = 1 : 200" loop?
1 view (last 30 days)
Show older comments
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 Comment
Azzi Abdelmalek
on 30 Jul 2013
Do I need to load the k variable from the original code inside the function?
Can you explain ?
Accepted Answer
Evan
on 30 Jul 2013
Edited: Evan
on 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
0 Comments
More Answers (0)
See Also
Categories
Find more on File Operations in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!