최소(min), 최대값(max)을 받아 그 사이의 랜덤수를 return 하는 함수를 구현해주세요.
함수는 짧지만, 이번에는 수학의 뇌를 조금 써야 하는 assignment 입니다. 🙌
앞으로 랜덤함수를 쓸 일이 정말 많습니다.
그런데 Math.random() 으로는 내가 원하는 범위의 랜덤수를 얻을 수가 없습니다.
항상 0.0000000000000000에서 0.9999999999999999 사이 값만 return 해주기 때문이죠.
Math.ceil(); 올림
Math.floor() 내림
Math.random() 랜덤한 숫자구하기
function getRandomNumber (min, max) {
min = Math.ceil(min); //최소값의 올림(소수점 까지 나오기때문에 올린다)
max = Math.floor(max); //최대값의 내림값(소수점 까지 나오기때문에 내린다.)
let ans = Math.floor(Math.random()*(max-min+1)+min)
/* 랜덤값의 영역 설정 Math.random() 밖에 * 는 최대값 설정
(max-min+1) 1 을 더하는 이유는
최대값에서 내림을 하기때문에 최대값을 10으로 설정 */
// return 랜덤수
return ans
}
console.log( getRandomNumber (2, 9))