Java 프로그래밍 예제
2차원 배열에 숫자를 차례대로 출력하기
iIxmont
2017. 9. 29. 13:21
이번 글에서는 2차원 배열에 숫자를 차례대로 출력하는 방법에 대해서 알아보도록 하겠습니다
배열에 관한 예제 입니다
다음 그림과 같이 출력되는 소스코드를 작성해보겠습니다
그림
public class Class1 {
public static void main(String[] args) {
int[][] arr = new int[5][5];//표와 같이 출력할 5x5배열을 선언한다
int num = 1;//배열에 대입할 첫번째 수 num을 선언하고 초기화한다
for (int i = 0; i < arr.length; i++) {//배열 arr의 행의 길이만큼 반복문이 수행된다
for (int j = 0; j < arr[0].length; j++) {//배열arr[0]의 열의 길이만큼 반복문이 수행된다
arr[i][j] = num;//arr[i][j]에 num을 대입한다
System.out.print(arr[i][j]+ " ");//배열 arr에 들어있는 숫자를 출력한다
num++;//num을 1증가시킨다
}
System.out.println();//줄을 바꾼다
}
}
}
출력
그럼 이제 예제를 조금 바꿔 보겠습니다
아까 전의 그림과는 그림이 조금 다릅니다
그림처럼 출력하는 소스코드를 작성 해보겠습니다
public class Class1 {
public static void main(String[] args) {
int[][] arr = new int[5][5];
int num = 1;//대입 할 숫자를 1로 초기화 한다
for (int i = 0; i < arr.length; i++) {//배열의 길이만큼 반복문을 수행한다
if(i%2==0) {//2로 나눠서 나머지가 0이라면 0번째,2번째,4번째 행이다
for (int j = 0; j < arr.length; j++) {//각 행의 열에 대해서 반복문을 수행한다
arr[i][j] = num;//num을 배열에 대입한다
num++;//num의 크기를 1 증가시킨다
}
}
else {//i를 2로 나눠서 나머지가 0이 아닌 경우,즉 1번째 3번째 행인 경우
for (int j = 4; j >=0 ; j--) {//각 행의 열에 대해서 반복문을 수행한다
arr[i][j] = num;//num을 배열에 대입한다
num++;//num의 크기를 1 증가 시킨다
}
}
}
for (int i = 0; i < arr.length; i++) {//각 행에 대한 반복문
for (int j = 0; j < arr.length; j++) {//각 열에 대한 반복문
System.out.print(arr[i][j]+ " ");//반복문을 수행하며 배열에 있는 값들을 모두 출력한다
}
System.out.println();
}
}
}
출력
설명은 주석에 적었습니다
두 번째 그림의 예제는 각 행의 0,1,2,3,4 인덱스를 0으로 나눠서 문제를 해결했습니다
0,2,4번째 행에서는 값이 증가하고 있습니다
1,3번째 행에서는 값이 감소하고 있습니다
이번 글에서는 배열의 인덱스에 관한 예제에 대해서 알아봤습니다
필요한 글이나 영상이 있으시다면 아래 주소에 올려주세요