IT story/Algorism

배열12 행렬변환

jason719 2016. 10. 2. 03:00

2016. 10. 02. 정보처리 산업기사 실기(알고리즘)

배열 12 행렬 변환


5행 3열의 arrayA를 3행 5열의 arrayB로 변환하여 보자!


알고리즘은 아래와 같다.

package example;


class ArrayExam{

public void matrixTransformation(){

System.out.println("\n 배열12 행렬 변환");

int r=5;

int c=3;

int arrayA[][] = new int [r][c];

int arrayB[][] = new int [c][r];

int num = 0;

for(int i=0; i<r; i++){

for(int J=0; J<c; J++){

num = num + 1;

arrayA[i][J] = num;

}

}

int L=0; int M=-1;

for(int i=0; i<r; i++){

for(int J=0; J<c; J++){

M = M + 1;

arrayB[L][M] = arrayA[i][J];

if(M>=r-1){ //arrayB의 열이 arrayA의 행의 숫자와 같아지면

L = L + 1//arrayB의 행값을 1증가 시키고

M = -1//열값은 0이 되도록 초기화 해준다. -1인 이유는 위에서 카운팅 

}                 먼저 하고 작업하기 때문이다! 

}

}

System.out.println(" arrayA");

for(int row=0; row<r; row++){

for(int col=0; col<c; col++){

System.out.printf("%3d",arrayA[row][col]);

}

System.out.println();

}

System.out.println("\n arrayB");

for(int row=0; row<c; row++){

for(int col=0; col<r; col++){

System.out.printf("%3d",arrayB[row][col]);

}

System.out.println();

}

}

}//class

public class AlgorismArray {

public static void main(String[] args) {

ArrayExam e = new ArrayExam();

e.matrixTransformation();

}//main

}//class





'IT story > Algorism' 카테고리의 다른 글

배열11 마방진(magic square)  (0) 2016.09.04
배열10 대각선으로 채우기  (0) 2016.09.04
배열9 달팽이 만들기  (0) 2016.09.04
배열8 90도 회전하기  (0) 2016.09.04
배열7 이등변 삼각형 만들기  (0) 2016.09.04