Everything has an expiration date
087 - Java 배열의 배열(2차원 배열=다차원 배열) : 배열의 배열을 활용하여 특정한 규칙의 다차원 배열 요소를 출력하기 본문
[Java]/Program source (java)
087 - Java 배열의 배열(2차원 배열=다차원 배열) : 배열의 배열을 활용하여 특정한 규칙의 다차원 배열 요소를 출력하기
Jelly-fish 2023. 9. 7. 09:58/*==========================
■■■ 배열 ■■■
- 배열의 배열
============================*/
// 배열의 배열(다차원 배열)을 활용하여
// 다음과 같은 데이터를 요소로 취하는 배열을 구성하고
// 그 결과를 출력하는 프로그램을 구현한다.
// 실행 예)
/*
n
↓
1 2 3 4 5 → i = 0
2 3 4 5 6 → i = 1
3 4 5 6 7 → i = 2
4 5 6 7 8 → i = 3
5 6 7 8 9 → i = 4
계속하려면 아무 키나 누르세요...
*/
public class Test087
{
public static void main(String[] args)
{
// 배열 구성
int[][] arr = new int[5][5];
int n;
for (int i = 0; i <arr.length ; i++) // 웅~~~~
{
n = i + 1;
for (int j = 0; j < arr[i].length; j++) // 쑝쑝쑝
{
// 테스트(확인)
//System.out.print(" i : " + i + ", j : " + j);
//System.out.print(" [" + n + "] ");
arr[i][j] = n;
n++;
}
//System.out.println();
}
// 배열 요소 전체 출력
for (int i = 0; i < arr.length ; i++)
{
for (int j = 0; j < arr[i].length ; j++)
{
System.out.printf("%3d", arr[i][j]);
}
System.out.println();
}
}
}
// 실행 결과
/*
1 2 3 4 5
2 3 4 5 6
3 4 5 6 7
4 5 6 7 8
5 6 7 8 9
계속하려면 아무 키나 누르십시오 . . .
*/
/*[내가 한 풀이]========================================================================
public class Test087
{
public static void main(String[] args)
{
// 1. 변수 선언
int[][] arr = new int[5][5];
int n = 1;
// 2. for문을 돌면서 배열의 값 저장.
// 1~5 를 출력한 후에, n을 n+1로 초기화 시켜 주어야 한다.
// [Logic]▤▤▤▤▤▤▤▤▤▤▤▤▤▤▤▤▤▤▤▤▤▤▤▤▤▤▤▤▤▤▤▤
// arr[i = 0][j = 0] ~ arr[i = 0][j = 4] = 『 n 』1, 2, 3, 4, 5 저장.
// 그 이후에 개행을 한 뒤
// arr[i = 1][j = 0] ~ arr[i = 1][j = 4] = 2, 3, 4, 5, 6을 저장하려면
// n의 값은 2부터 시작되어야 한다.
//
// 즉, 이 loof변수의 값 변화 표에서 n의 시작 값에 초점을 맞춰보면
// ___________
// │ i = 0 | n = 【1】 ~ 5 │
// │ i = 1 | n = 【2】 ~ 6 │
// │ i = 2 | n = 【3】 ~ 7 │
// │ i = 3 | n = 【4】 ~ 8 │
// │ i = 4 | n = 【5】 ~ 9 │
//  ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
// → 요소 저장값 n은 i와 『 1 + i 만큼 차이가 난다 』는 것을 알 수 있다.
//
// ▤▤▤▤▤▤▤▤▤▤▤▤▤▤▤▤▤▤▤▤▤▤▤▤▤▤▤▤▤▤▤▤▤▤▤▤
for (int i = 0; i < arr.length; i++)
{
for (int j = 0; j < arr[i].length; j++)
{
arr[i][j] = n;
n++;
}
n = 1 + (i+1);
}
for (int i = 0; i < arr.length; i++)
{
for (int j = 0; j < arr[i].length ; j++)
{
System.out.printf("%3d", arr[i][j]);
}
System.out.println();
}
}
}
==========================================================================================*/