separate codes work, together don't

1 view (last 30 days)
hi everyone I have written a code which is part of an algorithm and it is greatly working but when I put the exact same code in the algorithm it causes problem and the error refers to the code I have just put in
here is the code
ll=1;
for i=1:sk(1)
for j=1:sk(2)
if k(i,j)>0.5
k1(i,j)=k(i,j);
else
k1(i,j)=k0(ll);
ll=ll+1;
end
end
end
when I put it in the algorithm the ( ll ) counts more than numel(k0) but when I run it separately it works.
what is wrong with it?

Accepted Answer

Matz Johansson Bergström
Matz Johansson Bergström on 23 Aug 2014
I don't know the values of the variables you are using but this seems to work
n = 5;
k = rand(n,n);
sk = size(k)
k0 = 1:numel(k) %must be (maximum) the number of elements in k
ll = 1;
for i=1:sk(1)
for j=1:sk(2)
if k(i,j)>0.5
k1(i,j)=k(i,j);
else
k1(i,j)=k0(ll);
ll=ll+1;
end
end
end

More Answers (0)

Categories

Find more on Matrices and Arrays in Help Center and File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!