# 행렬의 곱
## 문제
뼈대 코드를 토대로 2차원 정수 배열의 곱을 구하는 프로그램을 작성하시오.
(뼈대코드의 실행 결과과 출력 예와 같을 것)
## 출력 예
```
14 32 50
32 77 122
50 122 194
6 6
12 12
18 18
24 24
```
## 뼈대코드
```
public class MatrixTest {
public static void main(String[] args) {
// 행렬 x, y의 곱을 구하여 출력
int[][] x = { { 1, 2, 3 },
{ 4, 5, 6 },
{ 7, 8, 9 } };
int[][] y = { { 1, 4, 7 },
{ 2, 5, 8 },
{ 3, 6, 9 } };
int[][] z = MyMatrix.multiply(x, y);
MyMatrix.print(z);
System.out.println();
// 행렬 a, b의 곱을 구하여 출력
int[][] a = { { 1, 1, 1 },
{ 2, 2, 2 },
{ 3, 3, 3 },
{ 4, 4, 4 } };
int[][] b = { { 1, 1 },
{ 2, 2 },
{ 3, 3 } };
int[][] c = MyMatrix.multiply(a, b);
MyMatrix.print(c);
}
}
class MyMatrix {
/* static 메소드 multiply를 작성하시오. */
public static int[][] multiply(int[][] x, int[][] y) {
return null;
}
public static void print(int[][] matrix) {
int iMax = matrix.length;
int jMax = matrix[0].length;
for (int i = 0; i < iMax; i++) {
for (int j = 0; j < jMax; j++) {
System.out.printf("%3d ", matrix[i][j]);
}
System.out.println();
}
}
}
```