2026. május 25., hétfő

Utolsó 10 kivételével skandináv

import sqlite3
import random

DB_NAME = "skandinav_lotto.db"


def create_db():
conn = sqlite3.connect(DB_NAME)
cur = conn.cursor()

cur.execute("""
CREATE TABLE IF NOT EXISTS draws (
id INTEGER PRIMARY KEY AUTOINCREMENT,
date TEXT,
type TEXT,
numbers TEXT
)
""")

conn.commit()
conn.close()


def insert_sample_data():
data = [
("2026-05-06", "kezi", "1,2,9,11,18,29,30"),
("2026-04-29", "kezi", "8,15,23,25,26,30,34"),
("2026-04-22", "kezi", "2,4,8,11,26,27,28"),
("2026-04-15", "kezi", "7,12,16,25,30,32,33"),
("2026-04-08", "kezi", "2,4,12,21,25,30,33"),
("2026-04-01", "kezi", "9,14,15,17,19,21,23"),
("2026-03-25", "kezi", "7,10,17,20,22,23,29"),
("2026-03-18", "kezi", "1,7,10,18,20,22,35"),
("2026-03-11", "kezi", "1,3,7,17,19,21,28"),
("2026-03-04", "kezi", "5,24,25,27,31,32,33"),
]

conn = sqlite3.connect(DB_NAME)
cur = conn.cursor()

cur.executemany("""
INSERT INTO draws (date, type, numbers)
VALUES (?, ?, ?)
""", data)

conn.commit()
conn.close()


def get_last_10_numbers():
conn = sqlite3.connect(DB_NAME)
cur = conn.cursor()

cur.execute("""
SELECT numbers
FROM draws
ORDER BY date DESC
LIMIT 10
""")

rows = cur.fetchall()
conn.close()

excluded = set()

for row in rows:
nums = row[0].split(",")
for n in nums:
excluded.add(int(n))

return excluded


def generate_7_numbers(excluded):
available = [i for i in range(1, 36) if i not in excluded]

# ha túl kevés szám maradna (biztonság)
if len(available) < 7:
raise ValueError("Túl kevés szám maradt a sorsoláshoz!")

return random.sample(available, 7)


def main():
create_db()
insert_sample_data()

excluded = get_last_10_numbers()

print("Kizárt számok (utolsó 10 sorsolásból):")
print(sorted(excluded))
print("\n-----------------------------\n")

result = generate_7_numbers(excluded)

print("Új 7 kihúzott szám:")
print(sorted(result))


if __name__ == "__main__":
main()

Nincsenek megjegyzések:

Megjegyzés küldése