무작위 숫자를 생성하는 Math.random() 메서드는 자주 사용됩니다. 이 메서드는 0 이상 1 미만의 실수를 무작위로 생성합니다.
Math.random() 메서드로 1부터 9까지 자연수(양의 정수) 중에 무작위로 숫자 하나를 뽑아 보겠습니다. Math.random()은 실수를 반환하므로 자연수로 바꿀 방법을 생각해야 합니다. 먼저 Math.random()한 값에 9를 곱한 후 1을 더하면 1 이상 10 미만의 수가 뽑힙니다. 이 수는 자연수가 아니라서 아직 쓸 수 없습니다. 숫자를 자연수로 만들려면 내림, 올림, 반올림을 해야 합니다. 이 경우에는 내림을 합니다. 결과로 1부터 9까지의 자연수가 나옵니다. 내림을 할 때는 Math.floor()를 사용하면 되겠죠?
표 3-1 무작위 숫자를 뽑는 과정
코드 |
결과 |
Math.random() |
0 <= x < 1 |
Math.random() * 9 |
0 <= x < 9 |
Math.random() * 9 + 1 |
1 <= x < 10 |
Math.floor(Math.random() * 9 + 1) |
x = {1, 2, 3, 4, 5, 6, 7, 8, 9} |
게임에서 우연한 요소를 위해 무작위 숫자를 생성하는 경우가 많으니 Math.random() 사용법을 잘 기억해 두기 바랍니다.