JAVA/자바 기본 프로그래밍
Test093 배열의 배열(2차원 배열) (7)
ready J
2020. 9. 6. 20:57
※ 배열의 배열(다차원 배열)을 활용하여 다음과 같은 데이터를 요소로 취하는 배열(4*5)을 구성하고
그 결과를 출력하는 프로그램을 구현한다.
단, 배열을 구성하는 구문과 출력하는 구문은 별도로 작성할수 있도록 한다.
실행 예)
1 8 9 16 17
2 7 10 15 18
3 6 11 14 19
4 5 12 13 20
계속하려면 아무 키나 누르세요...
방법 ①
public class Test093 { public static void main(String[] args) { // 배열의 배열 선언 및 메모리 할당 int[][] arr = new int[4][5]; int n = 0; for (int i = 0; i < 5; i++) // i → 0 1 2 3 4 { for (int j = 0; j < 4; j++) // j → 0 1 2 3 { n++; if(i % 2 == 0) arr[j][i] = n; else arr[3-j][i] = n; } } // 전체 요소 출력 for (int i = 0; i < arr.length; i++) { for (int j = 0; j < arr[i].length; j++) { System.out.printf("%4d",arr[i][j]); } System.out.println(); } } }
방법 ②
// 4행 5열 배열 준비 int[][] arr = new int[4][5]; int n = 1; // 배열 요소 초기화 for (int i = 0; i < arr.length + 1; i++) { for (int j = 0,k=3; j < arr.length; j++) { if(i % 2 == 0) arr[j][i] = n++; else if(i % 2 == 1) arr[k--][i] = n++; } } // 전체 요소 출력 for (int i = 0; i < arr.length; i++) { for (int j = 0; j < arr[i].length; j++) { System.out.printf("%4d",arr[i][j]); } System.out.println(); }
실행 결과
// 실행 결과 /* 1 8 9 16 17 2 7 10 15 18 3 6 11 14 19 4 5 12 13 20 계속하려면 아무 키나 누르십시오 . . . */