Search

배열3_문제07_택시게임

대분류
STEP05 일차배열
문제 난이도
LV03
소분류
일차배열3_문제

영상

문제

<script> /* [문제] 현재 택시는 5, 5 위치에 있다. (y = 5 , x = 5) dir배열은 뱡향을 뜻하고 [0, 1, 2 ,3]은 [북, 동, 남, 서]를 뜻한다. speed배열은 속도를 뜻한다. dir과 speed배열은 택시가 매번이동한 내용을 기록한 것이다. dir과 speed를 다 적용하면 y와 x는 어디에 와있는지 출력하시오. [정답] dir = 3, speed = 4 : 서쪽으로 4칸이므로 x에서 4를 뺀다. dir = 2, speed = 3 : 남쪽으로 3칸이므로 y에서 3을 뺸다. dir = 1, speed = 1 : 동쪽으로 1칸이므로 x에서 1을 더한다. dir = 0, speed = 2 : 북쪽으로 2칸이므로 y에서 2를 더한다. dir = 1, speed = 3 : 동쪽으로 3칸이므로 x에서 3을 더한다. y = 4 x = 5 */ let y = 5; let x = 5; let dir = [3, 2, 1, 0, 1]; let speed = [4, 3, 1, 2, 3]; </script>
Java
복사

해설

<script> /* [문제] 현재 택시는 5, 5 위치에 있다. (y = 5 , x = 5) dir배열은 뱡향을 뜻하고 [0, 1, 2 ,3]은 [북, 동, 남, 서]를 뜻한다. speed배열은 속도를 뜻한다. dir과 speed배열은 택시가 매번이동한 내용을 기록한 것이다. dir과 speed를 다 적용하면 y와 x는 어디에 와있는지 출력하시오. [정답] dir = 3, speed = 4 : 서쪽으로 4칸이므로 x에서 4를 뺀다. dir = 2, speed = 3 : 남쪽으로 3칸이므로 y에서 3을 뺸다. dir = 1, speed = 1 : 동쪽으로 1칸이므로 x에서 1을 더한다. dir = 0, speed = 2 : 북쪽으로 2칸이므로 y에서 2를 더한다. dir = 1, speed = 3 : 동쪽으로 3칸이므로 x에서 3을 더한다. y = 4 x = 5 */ let y = 5; let x = 5; let dir = [3, 2, 1, 0, 1]; let speed = [4, 3, 1, 2, 3]; let size = dir.length; for(let i=0; i<size; i++) { if(dir[i] == 0) { y += speed[i]; } else if(dir[i] == 1) { x += speed[i]; } else if(dir[i] == 2) { y -= speed[i]; } else if(dir[i] == 3) { x -= speed[i]; } } document.write("y = " + y + "<br>"); document.write("x = " + x); </script>
Java
복사