AI 로또 제외수 번호 조합

작성자 정보

  • 차트분석 작성
  • 작성일

컨텐츠 정보

본문

<!DOCTYPE html>
<html lang="ko">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>AI 로또 번호 생성기</title>
    <link rel="stylesheet" href="bootstrap@5.3.0/dist/css/bootstrap.min.css"" TARGET="_blank" rel="nofollow">https://cdn.jsdelivr.net/npm/bootstrap@5.3.0/dist/css/bootstrap.min.css">
    <script src="https://cdnjs.cloudflare.com/ajax/libs/html2canvas/1.4.1/html2canvas.min.js"></script>
    <style>
        body {
            font-family: Arial, sans-serif;
            text-align: center;
            padding: 20px;
        }
        .lotto-ball {
            display: inline-block;
            width: 40px;
            height: 40px;
            line-height: 40px;
            margin: 5px;
            border-radius: 50%;
            text-align: center;
            font-weight: bold;
            color: white;
            font-size: 18px;
        }
        .yellow { background-color: gold; }
        .blue { background-color: dodgerblue; }
        .red { background-color: crimson; }
        .gray { background-color: gray; }
        .green { background-color: green; }
        .number-btn {
            width: 50px;
            height: 50px;
            margin: 3px;
            font-size: 18px;
            border-radius: 50%;
            background-color: white;
            border: 1px solid black;
        }
        .selected {
            background-color: red !important;
            color: white;
        }
    </style>
</head>
<body>

    <h1>AI 로또 번호 생성기</h1>

    <h3>AI 추천 제외 번호 (최대 18개)</h3>
    <h3>제외 수 최대 18개 직접 선택가능</h3>
    <button class="btn btn-warning" onclick="autoSelectExcludedNumbers()">AI 제외 번호 선택</button>
    <div id="excludeNumbers" class="d-flex flex-wrap justify-content-center"></div>

    <h3>생성할 조합 개수</h3>
    <input type="number" id="numCombinations" value="1" min="1" max="10" class="form-control w-25 mx-auto">
    <p>(최대 10개)</p>

    <br>
    <button class="btn btn-primary" onclick="generateLottoNumbers()">번호 받기</button>

    <h2>생성된 로또 번호</h2>
    <div id="lottoNumbers"></div>

    <button class="btn btn-success" onclick="saveAsImage()">이미지 저장</button>

    <script>
        document.addEventListener('DOMContentLoaded', function() {
            let excludeContainer = document.getElementById('excludeNumbers');
            for (let i = 1; i <= 45; i++) {
                let btn = document.createElement('button');
                btn.className = 'btn btn-outline-dark number-btn';
                btn.textContent = i;
                btn.dataset.value = i;
                btn.onclick = function() {
                    if (btn.classList.contains('selected')) {
                        btn.classList.remove('selected');
                    } else {
                        if (document.querySelectorAll('.selected').length < 18) {
                            btn.classList.add('selected');
                        } else {
                            alert("최대 18개의 숫자만 제외할 수 있습니다.");
                        }
                    }
                };
                excludeContainer.appendChild(btn);
            }
        });

        function autoSelectExcludedNumbers() {
            let allNumbers = Array.from({ length: 45 }, (_, i) => i + 1);
            let shuffled = allNumbers.sort(() => 0.5 - Math.random());
            let excludedNumbers = shuffled.slice(0, 18);

            // 기존 선택된 버튼 초기화
            document.querySelectorAll('.number-btn').forEach(btn => btn.classList.remove('selected'));

            // AI 제외 번호를 자동으로 선택 (빨간색 표시)
            excludedNumbers.forEach(num => {
                let btn = document.querySelector(`.number-btn[data-value="${num}"]`);
                if (btn) btn.classList.add('selected');
            });
        }

        function generateLottoNumbers() {
            let numCombinations = parseInt(document.getElementById('numCombinations').value);
            let excludedNumbers = Array.from(document.querySelectorAll('.selected')).map(e => parseInt(e.dataset.value));

            let allNumbers = Array.from({ length: 45 }, (_, i) => i + 1);
            let availableNumbers = allNumbers.filter(num => !excludedNumbers.includes(num));
            let results = [];

            for (let i = 0; i < numCombinations; i++) {
                let shuffled = availableNumbers.sort(() => 0.5 - Math.random());
                results.push(shuffled.slice(0, 6).sort((a, b) => a - b));
            }

            let lottoNumbersDiv = document.getElementById('lottoNumbers');
            lottoNumbersDiv.innerHTML = results.map(set =>
                `<div class="mt-2">${set.map(num => `<span class="lotto-ball ${getColor(num)}">${num}</span>`).join('')}</div>`
            ).join('');
        }

        function getColor(number) {
            if (number <= 10) return "yellow";
            if (number <= 20) return "blue";
            if (number <= 30) return "red";
            if (number <= 40) return "gray";
            return "green";
        }

        function saveAsImage() {
            let lottoNumbersDiv = document.getElementById('lottoNumbers');

            if (!lottoNumbersDiv || lottoNumbersDiv.innerHTML.trim() === "") {
                alert("저장할 로또 번호가 없습니다.");
                return;
            }

            html2canvas(lottoNumbersDiv).then(canvas => {
                let link = document.createElement('a');
                link.href = canvas.toDataURL('image/png');
                link.download = 'lotto_numbers.png';
                link.click();
            }).catch(error => {
                console.error("이미지 저장 중 오류 발생:", error);
                alert("이미지를 저장하는 데 실패했습니다.");
            });
        }
    </script>

</body>
</html>
AI 로또 번호 생성기

AI 로또 번호 생성기

AI 추천 제외 번호 (최대 18개)

제외 수 최대 18개 직접 선택가능

생성할 조합 개수

(최대 10개)


생성된 로또 번호

관련자료

📊 크립토 공포지수 Latest Crypto Fear & Greed Index
알림 0