Left-rotating a vector
    1 view (last 30 days)
  
       Show older comments
    
we define a vector A and create a new vector B containing the elements of A shifted one index to the left. 
% As an example
A            B
[ 1 2 3 4 ]  [ 2 3 4 1 ]
[ 5 3 8 ]    [ 3 8 5 ]
% My code
A = [1,2,3,4,5];
B = [];
for i = 2:length(A)
    % A(1) = B(end);
    B = [B A(i)];
end
disp(B);
% The program showed Array indices must be positive integers or logical values.
% i do not know how to improve my code
% Thank you all
0 Comments
Accepted Answer
  Alan Stevens
      
      
 on 22 Mar 2022
        You define B as a null vector so it doesn't have an "end".
Try, simply
A = [1,2,3,4,5];
B = [A(2:end) A(1)]
More Answers (0)
See Also
Categories
				Find more on Loops and Conditional Statements 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!