Hi,
I have a test matrix [1 2 3; 4 5 6; 7 8 9] which I provide as input to a function called sandbox. The function is included below:
function [matchFound] = sandbox(input)
i=1; j=1; matchFound=[];
while (i<=size(input,1)) && (isempty(matchFound))
while (j<=size(input,2)) && (isempty(matchFound))
if input(i,j)==5
matchFound=1;
end
j=j+1;
end
i=i+1;
end
end
When I set i=1 in the second line the output is matchFound=[]; but when I set i=2 the output becomes matchFound=1. I have no clue why this happens. Could someone please help?
Best wishes

1 个评论

It is recommended that you do not name a variable "input" as doing so interferes with the MATLAB function input()

请先登录,再进行评论。

 采纳的回答

Walter Roberson
Walter Roberson 2016-3-24

0 个投票

You did not reset j to 1 when you start the next iteration of "i".

更多回答(0 个)

类别

在 帮助中心 和 File Exchange 中查找有关 Loops and Conditional Statements 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by