separate codes work, together don't

2 次查看(过去 30 天)
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?

采纳的回答

Matz Johansson Bergström
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

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Matrices and Arrays 的更多信息

标签

Community Treasure Hunt

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

Start Hunting!

Translated by