Reversing every second row in a matrix
10 ビュー (過去 30 日間)
古いコメントを表示
Hello!
I have a question regarding matrix transformation. The simplified version of what I have is:
1 2 3
4 5 6
7 8 9
10 11 12
etc
What I want is that every second row is reversed, so resulting in:
1 2 3
6 5 4
7 8 9
12 11 10
I have tried the flip-function, but as far as I found out that reverses every row. Any idea how to do this?
Thanks!
0 件のコメント
採用された回答
the cyclist
2015 年 12 月 19 日
M = [ 1 2 3;
4 5 6;
7 8 9;
10 11 12];
M(2:2:end,:) = fliplr(M(2:2:end,:))
その他の回答 (2 件)
Star Strider
2015 年 12 月 19 日
This works:
M = [1 2 3
4 5 6
7 8 9
10 11 12];
M(2:2:end,:) = M(2:2:end, end:-1:1);
0 件のコメント
harjeet singh
2015 年 12 月 19 日
dear melissa use this code
clear all
close all
clc
a=[1 2 3;4 5 6;7 8 9;10 11 12];
for i=1:size(a,1)
if(mod(i,2)==0)
b(i,:)=(flipud(a(i,:)'))';
else
b(i,:)=a(i,:);
end
end
b
0 件のコメント
参考
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!