Search

함수1_문제08_배열택시

대분류
STEP10 함수/클래스
문제 난이도
필수
소분류
함수1_문제

영상

문제

<script> /* [문제] 현재 택시는 5, 5 위치에 있다. dir 배열은 뱡향을 뜻하고 0, 1, 2, 3은 북, 동, 남, 서를 뜻한다. speed 배열은 속도를 뜻한다. dir과 speed 배열은 택시가 매번 이동한 내용을 기록한것이다. [예시] 처음에 dir이 0이니 북쪽을 뜻한다. speed는 4이므로, y가 4증가해 x : 5 , y : 9 가 된다. 두 번째는 dir이 2이니 남을 뜻하고, speed는 2이므로 y가 2감소해 x : 5 , y : 7 이된다. 6번 모두 이동한 후 택시의 위치를 출력하시오. [정답] y = 0, x = 8 */ let speed = [4, 2, 1, 5, 4, 2]; let dir = [0, 1, 3, 2, 2, 1]; let x = 5; let y = 5; </script>
Java
복사

해설

<script> /* [문제] 현재 택시는 5, 5 위치에 있다. dir 배열은 뱡향을 뜻하고 0, 1, 2, 3은 북, 동, 남, 서를 뜻한다. speed 배열은 속도를 뜻한다. dir과 speed 배열은 택시가 매번 이동한 내용을 기록한것이다. [예시] 처음에 dir이 0이니 북쪽을 뜻한다. speed는 4이므로, y가 4증가해 x : 5 , y : 9 가 된다. 두 번째는 dir이 2이니 남을 뜻하고, speed는 2이므로 y가 2감소해 x : 5 , y : 7 이된다. 6번 모두 이동한 후 택시의 위치를 출력하시오. [정답] y = 0, x = 8 */ function printResult(speed, dir, x, y) { for(let i=0; i<dir.length; 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 + ", x = " + x); } let speed = [4, 2, 1, 5, 4, 2]; let dir = [0, 1, 3, 2, 2, 1]; let x = 5; let y = 5; printResult(speed, dir, x, y); </script>
Java
복사