Search

이차배열5_문제09_구의개수

대분류
STEP08 이차배열
문제 난이도
LV09
소분류
이차배열5_문제

영상

문제

<script> /* [문제] mine배열 숫자 0의 자리에 숫자를 저장하려 한다. 저장할 숫자는 주변 8방향을 검사 후 9의 개수를 저장해야 한다. 저장 후 mine배열를 출력하시오. [정답] [2,9,2], [9,4,9], [1,3,9] */ let mine = [ [0, 9, 0], [9, 0, 9], [0, 0, 9] ]; </script>
Java
복사

해설

<script> /* [문제] mine배열 숫자 0의 자리에 숫자를 저장하려 한다. 저장할 숫자는 주변 8방향을 검사 후 9의 개수를 저장해야 한다. 저장 후 mine배열를 출력하시오. [정답] [2,9,2], [9,4,9], [1,3,9] */ let mine = [ [0, 9, 0], [9, 0, 9], [0, 0, 9] ]; /* 00 01 02 10 11 12 20 21 22 */ for(let i=0; i<mine.length; i++) { for(let j=0; j<mine[i].length; j++) { let count = 0; if(mine[i][j] == 0) { for(let y=-1; y<=1; y++) { for(let x=-1; x<=1; x++) { if(mine.length <= i + y || i + y < 0) { continue; } if(mine.length <= j + x || j + x < 0) { continue; } if(mine[i + y][j + x] == 9) { count += 1; } } } mine[i][j] = count; } } } for(let i=0; i<mine.length; i++) { document.write(mine[i] + "<br>"); } </script>
Java
복사