for loop query
조회 수: 1 (최근 30일)
이전 댓글 표시
Hi,
m = 3; c = [40,39,36,30,22,21]
I have to get the answer in matrixformat d= [40 39 36 ; 21 22 30] as my machine size m = 3
once the first row is over(3 elements are printed),remaining elements of c matrix has to be printed in reverse order as shown in second row of d matrix.
Advice me regarding
댓글 수: 0
답변 (1개)
Jarrod Rivituso
2012년 2월 23일
Reshape and fliplr will help you here:
m = 3;
c = [40,39,36,30,22,21,1,2,3,4,5,6]
result = reshape(c,m,[])'
result(2:2:end,:) = fliplr(result(2:2:end,:))
Note that there are some subtleties with how matrices are reshaped that are a result of the column-major nature of MATLAB. This is why the transpose is there. Read the reshape doc for more info
doc reshape
참고 항목
카테고리
Help Center 및 File Exchange에서 Matrices and Arrays에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!