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

D0501_점검03_문제

점검

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

정답

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