circshift() one number ,in each iteration?
3 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
Mary Jon
le 6 Oct 2013
Commenté : Image Analyst
le 6 Oct 2013
can I am do shifting the number A(2,1) of matrix (A) ,one times in each iteration,('iter=0' ,iter=iter+1)? how can do that?
A=[1 2 3;4 5 6;7 8 9]
% Shift A(2,1)
for k=1:size(A,2)-1
A(2,:)=circshift(A(2,:),[0 1])
end
2 commentaires
Image Analyst
le 6 Oct 2013
It shifts the entire second row one element at each iteration of the loop. Is that not what you wanted? Did you want to shift only the (2,1) element and not all of the elements in the second row? Either way, why? Seems like a funny thing to do unless it's homework or something. But it can't be homework because you would have tagged it as homework, so why do you want to do this?
Réponse acceptée
Azzi Abdelmalek
le 6 Oct 2013
Maybe you want to save all the results
clear
A=[1 2 3;4 5 6;7 8 9]
% Shift A(2,1)
for k=1:size(A,2)-1
A(2,:)=circshift(A(2,:),[0 1])
out{k}=A
end
celldisp(out)
6 commentaires
Image Analyst
le 6 Oct 2013
Modifié(e) : Image Analyst
le 6 Oct 2013
size(array, n) means the length of array in the nth dimension. It DOES NOT mean array(n) which is the value of the array at index n. They're totally different things. By the way, you never answered my question in the comment at the very top.
Plus de réponses (0)
Voir également
Catégories
En savoir plus sur Loops and Conditional Statements dans Help Center et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!