영상
문제
<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
복사