로또 당첨 확률 계산


로또 당첨 확률이 궁금하여 몇번 만에 1등에 당첨되는지
알려주는 앱을 만들어봤어요.

먼저 1~45 사이의 숫자를 랜덤으로 6개 추출하는 function을 만듭니다.


const BALL_MAX = 6; //로또 6개의 숫자

const run = () => {
  const numArray = Array(45)
    .fill()
    .map((_i=> i + 1);

  let result = [];

  for (let i = -1++i < BALL_MAX; ) {
    const num = Math.floor(Math.random() * 45- i;
    result[i= numArray[num];
    numArray.splice(num1);    //선택된 번호는 삭제한다.
  }
  return result;
};



당첨 숫자를 몇번만에 찾는지 출력합니다.


const findWinning = (times=> {
  let winnigNum = run();    //숫자 추출
  winnigNum = winnigNum.sort(sortAsc);  //오름차순 정렬
  console.log("당첨숫자"winnigNum);    
  winnigNum = winnigNum.join(",");    //배열을 문자열로 만든다.
  for (const i of Array(times).keys()) {
    let isLoop = true;
    let count = 0;
    while (isLoop) {
      count++;
      const lottoNum = run();
      const sorttingLottoNum = lottoNum.sort(sortAsc);
      if (sorttingLottoNum.join(","=== winnigNum)
        isLoop = false;
    }
    console.log(
      count.toString().replace(/\B(?=(\d{3})+(?!\d))/g","),
      "번 돌려야 1등 당첨"
    );
  }
};

findWinning(10); //10번 실행해본다.



콘솔창에 출력되는 메세지


당첨숫자 (6) [4, 10, 22, 23, 40, 45] 11,519,352 번 돌려야 1등 당첨 4,400,702 번 돌려야 1등 당첨 31,182,311 번 돌려야 1등 당첨 3,214,285 번 돌려야 1등 당첨 7,391,023 번 돌려야 1등 당첨 9,092,039 번 돌려야 1등 당첨 9,797,204 번 돌려야 1등 당첨 14,547,297 번 돌려야 1등 당첨 385,232 번 돌려야 1등 당첨 2,482,972 번 돌려야 1등 당첨





댓글