728x90
반응형
2020년 4회 정보처리기사 실기 기출문제
문제
다음 JAVA 프로그램을 분석하여 빈 칸 (1),(2)에 들어갈 내용을 각각 쓰시오
public class good {
public static void main(String[] args) {
int[][] array = new int[(___1번___)][(___2번___)];
for (int i = 0; i < 3; i++) {
for (int j = 0; j < 5; j++) {
array[i][j] = j * 3 + (i + 1);
System.out.print(array[i][j] + "");
}
System.out.println();
}
}
}
정답
- (1번): 3
- (2번): 5
반응형
해설
📌 2차원 배열이란?
- 1차원 배열은 일렬로 나열된 선형 데이터 구조입니다. 배열의 각 요소는 고유한 단일 인덱스를 사용해 접근합니다.
// 형식
데이터형[] 배열이름 = new 데이터형[크기];
// 예제
int[] array = new int[5]; // 크기가 5인 1차원 배열 선언
array[0] = 10; // 첫 번째 요소에 10 저장
array[1] = 20; // 두 번째 요소에 20 저장
array[2] = 30; // 세 번째 요소에 30 저장
array[3] = 40; // 네 번째 요소에 40 저장
array[4] = 50; // 다섯 번째 요소에 50 저장
// 출력 결과
array[0] = 10
array[1] = 20
array[2] = 30
array[3] = 40
array[4] = 50
- 2차원 배열 : 배열의 배열로, 데이터를 행(row)과 열(column)의 형태로 저장하는 구조입니다. 즉, 각 데이터는 두 개의 인덱스를 사용해 접근할 수 있습니다.
// 형식
데이터형[][] 배열이름 = new 데이터형[행 크기][열 크기];
// 예제
int[][] array = new int[2][3]; // 2행 3열의 2차원 배열 선언
array[0][0] = 1; // 첫 번째 행, 첫 번째 열 요소에 1 저장
array[0][1] = 2; // 첫 번째 행, 두 번째 열 요소에 2 저장
array[0][2] = 3; // 첫 번째 행, 세 번째 열 요소에 3 저장
array[1][0] = 4; // 두 번째 행, 첫 번째 열 요소에 4 저장
array[1][1] = 5; // 두 번째 행, 두 번째 열 요소에 5 저장
array[1][2] = 6; // 두 번째 행, 세 번째 열 요소에 6 저장
// 출력 결과
array[0][0] = 1 array[0][1] = 2 array[0][2] = 3
array[1][0] = 4 array[1][1] = 5 array[1][2] = 6
728x90
📌 문제 코드 해설
1️⃣ 2차원 배열 선언
int[][] array = new int[(___1번___)][(___2번___)];
2차원 배열의 크기를 나타내는 1번과 2번은 각각 행(row)과 열(column)의 크기를 의미합니다.
아래 반복문에서 행은 3번 반복(i < 3), 열은 5번 반복(j < 5)하는 것으로 보아, 배열의 크기는 [3][5]가 되어야 합니다.
2️⃣ 중첩 반복문을 통한 배열 값 초기화
for (int i = 0; i < 3; i++) {
for (int j = 0; j < 5; j++) {
array[i][j] = j * 3 + (i + 1);
array[i][j]의 값은 각 행(i)과 열(j)의 값에 따라 초기화됩니다.
계산식: j * 3 + (i + 1)
- j * 3: 열 값에 따라 3씩 증가.
- (i + 1): 행 값에 따라 1씩 더해짐.
3️⃣ 배열 값 출력
System.out.print(array[i][j] + "");
// 출력
1 4 7 10 13
2 5 8 11 14
3 6 9 12 15
배열의 각 요소를 한 줄에 출력하며, System.out.println()은 행이 끝날 때 줄을 바꿉니다.
"이 포스팅은 쿠팡 파트너스 활동의 일환으로, 이에 따른 일정액의 수수료를 제공받습니다."
728x90
반응형
'코딩일기 > 자격증' 카테고리의 다른 글
[정보처리기사] [ Java ] 상속과 오버라이딩, 재귀 함수 문제 해설 | 정보처리기사 실기 기출 문제 풀이 (0) | 2024.12.17 |
---|---|
[정보처리기사] [ Python ] 2차원 리스트 출력 문제 | 정보처리기사 실기 기출 문제 풀이 (0) | 2024.12.17 |
[정보처리기사] [ C ] 포인터와 배열 | 2020년 3회 정보처리기사 실기 기출문제 (0) | 2024.12.10 |
[정보처리기사] [ Java ] 10진수를 2진수로 변환하는 알고리즘 | 2020년 3회 정보처리기사 실기 기출문제 (0) | 2024.12.10 |
[정보처리기사] 블록체인(Blockchain) | SW 신기술 및 관련 용어 | 정보처리기사 실기 기출문제 (0) | 2024.12.10 |