필터 지우기
필터 지우기

Alternate for flipr command in matlab

조회 수: 4 (최근 30일)
Bathrinath
Bathrinath 2012년 3월 1일
Hi,
m = 3; n = 8; There are 8 elements in A
A = [33,47,44,49,40,21,45,48];
After sorting in descending order
A = [49,48,47,45,44,40,33,21]
I need final matrix
final =[ 49 48 47 ; 40 44 45 ; 33 21 ]
In first two rows 3 elemets has to be there.
In third row 2 elements has to be there,because n = 8.
Second row is printed in reverse order.
I cant use "flipr" in this case bcoz matrix is not same size.
Alternate rows has to be printed in reverse order.
Advice me regarding this.

답변 (2개)

Walter Roberson
Walter Roberson 2012년 3월 1일
You cannot create a numeric matrix which has different number of elements in various rows or columns. 8 elements cannot be arranged in to a 3-row numeric matrix -- not without adding an extra element.

Andrei Bobrov
Andrei Bobrov 2012년 3월 1일
A = [33,47,44,49,40,21,45,48];
m = 3;
n = numel(A);
out = nan(m,ceil(n/m));
out(1:n) = sort(A,'descend');
out(:,2:2:end) = out(end:-1:1,2:2:end);
out = out'
  댓글 수: 1
Bathrinath
Bathrinath 2012년 3월 2일
Thanks andrei bobrov,your code works

댓글을 달려면 로그인하십시오.

카테고리

Help CenterFile Exchange에서 Creating and Concatenating Matrices에 대해 자세히 알아보기

Community Treasure Hunt

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

Start Hunting!

Translated by