자바스크립트
home
2025 자바스크립트 초급 1500제
home

D0501_예제03_문제

예제

<script> /* [문제] 철수는 집 앞에 있는 산에 올라가고 있습니다. 산에는 총 100개의 계단이 있으며, 현재 철수는 3번째 계단에 서 있습니다. 먼저, 1부터 10 사이의 랜덤 숫자 하나를 생성하여 이동할 칸 수를 정합니다. 이어서, 1부터 2 사이의 랜덤 숫자를 저장해 값이 1이면, 철수는 계단 위로 해당 칸 수 만큼 올라가고, 값이 2이면, 철수는 계단 아래로 해당 칸 수 만큼 내려갑니다. 철수의 위치가 0이 되면 더 이상 내려갈 수 없습니다. 즉, 계단 아래로 내려가는 도중 0보다 작아지면, 위치는 0으로 고정됩니다. 철수가 이동한 후 최종 위치를 출력하시오. 단, 중첩을 사용하지 마시오. */ /* [출력예시] 7 1 10 [출력예시] 9 2 0 */ let a = 3; </script>
HTML
복사

정답

<script> /* [문제] 철수는 집 앞에 있는 산에 올라가고 있습니다. 산에는 총 100개의 계단이 있으며, 현재 철수는 3번째 계단에 서 있습니다. 먼저, 1부터 10 사이의 랜덤 숫자 하나를 생성하여 이동할 칸 수를 정합니다. 이어서, 1부터 2 사이의 랜덤 숫자를 저장해 값이 1이면, 철수는 계단 위로 해당 칸 수 만큼 올라가고, 값이 2이면, 철수는 계단 아래로 해당 칸 수 만큼 내려갑니다. 철수의 위치가 0이 되면 더 이상 내려갈 수 없습니다. 즉, 계단 아래로 내려가는 도중 0보다 작아지면, 위치는 0으로 고정됩니다. 철수가 이동한 후 최종 위치를 출력하시오. 단, 중첩을 사용하지 마시오. */ /* [출력예시] 7 1 10 [출력예시] 9 2 0 */ let a = 3; let r = Math.floor(Math.random() * 10) + 1; let s = Math.floor(Math.random() * 2) + 1; document.write(r, " ", s, "<br>"); let b = a + r; let c = a - r; if(s == 1) { document.write(b); } if(s == 2 && c >= 0) { document.write(c); } if(s == 2 && c < 0) { c = 0; document.write(c); } </script>
HTML
복사