당첨확률 높은 로또번호 추출하기 > 개발자팁

개발자팁

개발과 관련된 유용한 정보를 공유하세요.
질문은 QA에서 해주시기 바랍니다.

당첨확률 높은 로또번호 추출하기 정보

JavaScript 당첨확률 높은 로또번호 추출하기

본문

 

이것이 여기 올라가는 것이 맞을지는 모르겠으나...

https://sir.kr/cm_free/1690796 의 메이드님 코멘트, 즉 로또확률 높이는 자바스크립트를 짜 보았습니다.

 

https://wittazzurri.com/editor/html_editor.php 에서 확인해 보세요.

option = 10000; 은 일만원 기준입니다. 그러니까 합계는 2만원이 됩니다.

이걸 10000 이 아니라 다른 숫자나 문자를 주면 오천원 기준 합계 1만원짜리로 코드가 바뀝니다.

딱 2개 금액만 옵션을 주었습니다.

 


<script>
option = 10000; 
optionNumber = option == 10000 ? 10 : 5; 
cutLine = option == 10000 ? 59 : 29; 
function made45() {
    for (n45 = [], i = 1; i <= 45; i++) n45.push(i);
    for (i in n45) {
        r45 = Math.floor(Math.random() * n45.length);
        c45 = n45[r45];
        n45[r45] = n45[i];
        n45[i] = c45;  
    }
    n45 = n45.slice(0, 6).sort(function(...s45) { return s45[0] - s45[1]; });
}
for (firstLotto = [], j = 1; j <= optionNumber; j++) {
    made45();
    firstLotto = firstLotto.concat(n45);
}
for (lotto45 = [], lotto = 1; lotto <= 45; lotto++) lotto45.push(lotto);
function made6() {
    n6 = lotto45.filter(x => !firstLotto.includes(x));
    for (i in n6) {
        r6 = Math.floor(Math.random() * n6.length);
        c6 = n6[r6];
        n6[r6] = n6[i];
        n6[i] = c6;  
    }
    n6 = n6.slice(0, 6).sort(function(...s6) { return s6[0] - s6[1]; });
}
for (secondLotto = [], j = 1; j <= optionNumber; j++) {
    made6();
    secondLotto = secondLotto.concat(n6);
}
totalLotto = firstLotto.concat(secondLotto);
lottoNumber = "";
for (k in totalLotto) {
    if (k == cutLine) lottoNumber += totalLotto[k] + "<br><br>";
    else if (k % 6 == 5) lottoNumber += totalLotto[k] + "<br>";
    else lottoNumber += totalLotto[k] + ",";  
}
document.write(lottoNumber);
</script>
추천
6

댓글 24개

@미니님a 

2008년도 쯤이죠.

저 플래셔 시절 지금은 망한 로또관련회사에서 로또관련 코드를 액션 스크립트로 만들어 달라했던 적이 있었죠.

플래시로 만들면 아무래도 더 멋지게 보이니까요.

그런데 로드할 기본문서를 꼭 xml 로 만들어야 한다고 해서 xml 로 줄창나게 만들었던 기억이 납니다.ㅋ

 

그 당시 그 회사 개발자는 php 전공이었는데 자바스크립트는 많이 약해서 저랑 그 친구랑 서로 힘든 적이 몇번 있었어요.

 

사이트 대박 나시기 바랍니다.

@나무사랑 

스크립트는 음악 작곡과 비슷하다고 봅니다.

주어진 건 도레미파솔라시도의 7음계 속성과 반박자 한박자 등의 기본 메서드 만으로 정말 무수한 곡을 만들잖아요?

 

내가 자주 사용하는 스크립트의 속성과 메서드가 몇개인가 생각해보면 고작해야 오십개 정도입니다.

그걸 조화해서 무수히 다른 결과물을 만드는 일은 작곡과 유사해요.^^

4,5,11,12,17,18
11,21,30,31,32,41
10,21,26,31,36,45
2,19,22,27,41,44
11,12,14,15,43,45
3,12,15,17,21,31
10,23,25,32,41,44
12,16,19,22,29,32
4,17,20,30,31,36
13,17,22,25,30,45

1,7,9,33,37,42
6,24,28,33,37,39
1,7,24,34,35,40
9,24,28,34,39,42
8,9,28,33,35,40
8,24,28,34,35,42
6,7,8,24,35,39
6,7,9,24,35,37
6,8,34,38,39,40
1,24,33,34,35,39  나오네요

option = 20000; 
price = 1000;
optionNumber = option / (price * 2); 
cutLine = (optionNumber * 6) - 1;
요렇게 수정해 주시면 좋을 것 같습니다.

전회 보너스볼로 나온 아이는 다음회 당첨번호로 안나오더라, 나온횟수가 가장 많은 번호는 확률이 낮다 등의 이유로 제외번호를 적용하는 곳들이 있는거 같습니다. 제외할 번호를 빼고 추출하도록도 가능할까요?

전체 5,368
개발자팁 내용 검색

회원로그인

(주)에스아이알소프트 / 대표:홍석명 / (06211) 서울특별시 강남구 역삼동 707-34 한신인터밸리24 서관 1404호 / E-Mail: admin@sir.kr
사업자등록번호: 217-81-36347 / 통신판매업신고번호:2014-서울강남-02098호 / 개인정보보호책임자:김민섭(minsup@sir.kr)
© SIRSOFT