flip a matrix using loops

3 次查看(过去 30 天)
Ariela Glikman
Ariela Glikman 2018-12-9
评论: Stephen23 2018-12-9
hi,
im tring to flip a matrix usind withot the flip function
for ex:
[1 3 -2; -4 4 8; 7 -1 3] will cange to [7 -1 3; -4 4 8; 1 3 -2]
my script is
outFlip(i,:)= inMatrix(size(inMatrix,1)+1-i,:);

回答(2 个)

Jan
Jan 2018-12-9
编辑:Jan 2018-12-9
Your line is correct already. Only the loop is missing:
n = size(matrix, 1);
for k = 1:n
outFlip(k,:) = inMatrix(n - k + 1, :);
end
Without the loop:
n = size(matrix, 1);
outFlip = inMatrix(n:-1:1, :);

madhan ravi
madhan ravi 2018-12-9
matrix=randi([0,4],2);
outFlip=zeros(size(matrix,1),size(matrix,2));
for i= 1:size(matrix,1)
for j=1:size(matrix,2)
outFlip(j,i)=matrix(i,j); % just swap the indices
end
end
  2 个评论
Ariela Glikman
Ariela Glikman 2018-12-9
no, i mean:
[1 3 -2; -4 4 8; 7 -1 3] will cange to [7 -1 3; -4 4 8; 1 3 -2]
madhan ravi
madhan ravi 2018-12-9
ok then:
matrix=[1 3 -2; -4 4 8; 7 -1 3];
ctr=1;
outFlip=zeros(size(matrix,1),size(matrix,2));
for i=size(matrix,1):-1:1
outFlip(i,:)=matrix(ctr,:); % just swap the indices
ctr=ctr+1;
end
outFlip

请先登录,再进行评论。

类别

Help CenterFile Exchange 中查找有关 Loops and Conditional Statements 的更多信息

标签

产品

Community Treasure Hunt

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

Start Hunting!

Translated by