문제
const random7 = () => Math.ceil(Math.random() * 7);
위의 뚱뚱한 화살표 함수가 있다고 가정합니다. 이 함수는 호출할 때마다 0(제외)에서 7(포함) 사이의 난수를 생성합니다.
인수를 사용하지 않고 JavaScript 라이브러리나 타사 라이브러리를 사용하지 않는 유사한 random10() JavaScript 함수를 작성해야 합니다. 그리고 이 random7() 함수만 사용하면 함수는 0(제외)에서 10(포함) 사이의 난수를 반환해야 합니다.
예시
이에 대한 코드는 -
const random7 = () => Math.ceil(Math.random() * 7); const random10 = () => { let sum; for(let i = 0; i < 50; i++){ sum += random7(); } return (sum % 10) + 1; }; console.log(random10());
코드 설명
여기에서는 rand7() 함수로 몇 개의 숫자(이 경우 50개, 그러나 숫자는 다를 수 있음)를 추가하여 가능한 한 균일한 임의의 합계를 생성하고 이 합계를 사용하여 기수 10의 숫자를 생성했습니다.피>
출력
콘솔의 출력은 -
NaN