Reverse an array by for loop
26 次查看(过去 30 天)
显示 更早的评论
Hi i got this array : a=[1 2 3 4 5] and i want to reverse it by for loop so it will be a=[5 4 3 2 1]
Thanks
0 个评论
采纳的回答
Wayne King
2012-10-10
Why a for loop?
a = [1 2 3 4 5] ;
b = fliplr(a);
If you must with a for loop
for ii = 1:length(a)
b(ii) = a(length(a)-ii+1);
end
3 个评论
Wayne King
2012-10-10
a = [1 2 3 4 5] ;
for ii = 1:length(a)
b(ii) = a(length(a)-ii+1);
end
It absolutely works. Just copy and paste the entire code snippet above into the command window.
更多回答(2 个)
Matt Fig
2012-10-10
An in-place FOR loop would look like:
a = 1:10;
L = length(a);
for ii = 1:L/2
T = a(L-ii+1);
a(L-ii+1) = a(ii);
a(ii) = T;
end
2 个评论
Matt Fig
2012-10-10
You need to read the "Getting Started" section of the documentation. Copy-paste the code I gave into the command window and it will reverse the elements of a. Nothing is wrong, you just didn't look at a after the code ran!! To look at the result, type:
a
at the command window.....
另请参阅
类别
在 Help Center 和 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!