Math.random();
Random number generation
16 Decimal Place.
소수점 16자리까지 나옴
0~0.9999999999999999 사이에서 랜덤 숫자 나옴
ex) 0.3647382678956781
var n = Math.random( ); //0.3647382678956781
n = n * 6; //2.188429607374069
n = Math.floor(n); //2
주사위 던지기 만들기
var n = Math.random();
n = n*6;
n = Math.floor(n)+1; // 0~5까지만 나와서 1 더해줌
console.log(n);
pseudo random number
컴퓨터가 완전 random number는 아니고 pseudo random number인 이유는
컴퓨터는 기본적으로 스위치로 되어있다. 수억의 스위치로 이뤄진 엄청 큰 박스이다.
스위치가 on 또는 off 되는 것은 0, 1로 나타낸다.
컴퓨터가 어려워하는 부분이 랜덤이다.
컴퓨터인 기계는 예측가능하고 반복적인 일에 특화되어 있기 때문이다.
컴퓨터가 긴 랜덤 숫자를 저장하고 있는 것도 한계가 있다.
자체로 만들어야 하는데 Neumann은 알고리즘을 만들었다.
시간이나 노이즈에서 캐치해서 컴퓨터가 예를 들어
seed 넘버 3자리는 만들고 이 후에 같은 숫자를 서로 곱해서 중간에 나온 3자리를 뒤에 붙여준다.
뒤에 붙여준 3자리 숫자를 또 곱해고, 중간 숫자를 빼서 뒤에 붙여주는 방식으로 컴퓨터는 pseudo random number를 만든다.
더 자세한 사항은 유튜브에서
Love Calculator 만들기
var nameA = prompt("What's your name?");
var nameB = prompt("What's your crash's name?");
var loveScore = Math.random() * 100;
loveScore = Math.round(loveScore);
alert(nameA + " ❤ " + nameB + ". Your love score is "+ loveScore +" %");
'Java Script > JS basic' 카테고리의 다른 글
JS] Comparators and Equality (0) | 2021.08.10 |
---|---|
JS] If-Else Conditionals & Logic / advanced BMI (미해결) (0) | 2021.08.09 |
JS] 함수연습 / BMI 계산 (0) | 2021.08.08 |
JS] 함수 parameters and Arguments (0) | 2021.08.07 |
JS] 함수안의 함수 / Stanford Karel (0) | 2021.08.07 |
댓글