Search

배열8_문제04_배열비교

대분류
STEP05 배열
소분류
배열8_문제

영상

문제

package 배열8_문제; /* [문제] arr, b, c 배열에 공통적으로 존재하는 값을 result배열에 순차적으로 저장하시오. [정답] result = {40, 50, 0, 0} */ public class 배열8_문제04_배열비교_문제 { public static void main(String[] args) { int[][] arr = { {10,20,30}, {40,50,60}, {70,80,90}, }; int[] b = {23,40,30,50}; int[] c = {4,34,40,50}; int[] result = new int[4]; } }
Java
복사

해설

package 배열8_문제; import java.util.Arrays; /* [문제] arr, b, c 배열에 공통적으로 존재하는 값을 result배열에 순차적으로 저장하시오. [정답] result = {40, 50, 0, 0} */ public class 배열8_문제04_배열비교_정답 { public static void main(String[] args) { int[][] arr = { {10,20,30}, {40,50,60}, {70,80,90}, }; int[] b = {23,40,30,50}; int[] c = {4,34,40,50}; int[] result = new int[4]; /* index = 0 i = 0, check = false j = 0 k = 0 b[0] == arr[0][0] false k = 1 b[0] == arr[0][1] false k = 2 b[0] == arr[0][2] false j = 1 k = 0 b[0] == arr[1][0] false k = 1 b[0] == arr[1][1] false k = 2 b[0] == arr[1][2] false j = 2 k = 0 b[0] == arr[2][0] false k = 1 b[0] == arr[2][1] false k = 2 b[0] == arr[2][2] false i = 1 check = false j = 0 k = 0 b[1] == arr[0][0] false k = 1 b[1] == arr[0][1] false k = 2 b[1] == arr[0][2] false j = 1 k = 0 b[1] == arr[1][0] false k = 1 b[1] == arr[1][1] true check = true check == true c = 0 b[1] == c[0] c = 1 b[1] == c[1] c = 2 b[1] == c[2] break result[0] = b[1] index = 1 ... */ int index = 0; for(int i=0; i<b.length; i++) { // b의 값과 arr의 값을 비교해서 일치여부 확인 boolean check = false; for(int j=0; j<arr.length; j++) { for(int k=0; k<arr[j].length; k++) { if(b[i] == arr[j][k]) { check = true; break; } } } // 일치하면, c도 검사를 진행하고 if(check) { for(int j=0; j<c.length; j++) { if(b[i] == c[j]) { result[index] = b[i]; index += 1; break; } } } // 일치하지 않으면, c검사 진행 X } System.out.println(Arrays.toString(result)); } }
Java
복사