2025. július 27., vasárnap

Programozás korrepetálás; lottózzunk pythonban

Kedves diákjaim, írtam egy python programot, ami generál egy listát, amit a sorsoláskor kis eséllyel találhatnak el. Ebből kimaradnak azok amik, már régen nem lettek kisorsolva, ez egy újabb lista. Ezt követően a megmaradt számokból újra generáltam 5 számot amire kicsi az esély, mind addig amíg, már csak öt szám maradt.

A teljes lista 90 szám

forrás 1

import random

def generate_lotto(previous_numbers, total_numbers=71, min_number=1, max_number=90):
    """
    Generál lottószámokat, kivéve az előző heti nyerőszámokat.
    
    Args:
        previous_numbers (list): A korábbi heti nyerőszámokat tartalmazó lista.
        total_numbers (int): Hány számot kell generálni (alapértelmezett: 5).
        min_number (int): A számok alsó határa (alapértelmezett: 1).
        max_number (int): A számok felső határa (alapértelmezett: 90).
        
    Returns:
        list: A kiválasztott számokat tartalmazó lista.
    """
    # Hozzuk létre a lehetséges számokat, kivéve az előző heti nyerőszámokat
    available_numbers = [num for num in range(min_number, max_number + 1) if num not in previous_numbers]
    
    # Ellenőrizzük, hogy van-e elegendő szám a generáláshoz
    if len(available_numbers) < total_numbers:
        raise ValueError("Nem áll rendelkezésre elegendő szám a generáláshoz.")
    
    # Véletlenszerűen kiválasztjuk a számokat
    selected_numbers = random.sample(available_numbers, total_numbers)
    
    # A számokat növekvő sorrendbe rendezzük
    selected_numbers.sort()
    
    return selected_numbers

# Példa az előző heti nyerőszámokra
previous_week_numbers = [ 14,19,24,25,30,38,40,42,43,45,51,54,58,60,62,63,69,70,75]
lotto_numbers = generate_lotto(previous_week_numbers)

print("A lottó nyerőszámai (az előző héten kisorsolt számokat kizárva):")
print(lotto_numbers)
------------
forrás 2
import random

# Megadott lista
kistabol = [ 24,25,30,38,40,42, 43,45,51,54,58, 60,62,63,69,70,75]

# Ellenőrizzük, hogy a lista legalább 5 elemet tartalmaz-e
if len(kistabol) < 5:
    print("A lista nem elég hosszú a kiválasztáshoz.")
else:
    # Véletlenszerűen kiválasztunk 5 különböző számot
    kivalasztott_szamok = random.sample(kistabol, 5)
    print("Kiválasztott számok:", kivalasztott_szamok)
---------
Az adatok
1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 15, 16, 17, 18, 20, 21, 22, 23, 26, 27, 28, 29, 31, 32, 33, 34, 35, 36, 37, 39, 41, 44, 46, 47, 48, 49, 50, 52, 53, 55, 56, 57,
 59, 61, 64, 65, 66, 67, 68, 71, 72, 73, 74, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90]

A maradék lista

24,25,30,38,40,42, 43,45,51,54,58, 60,62,63,69,70,75
60, 30, 42, 24, 40]

Közbülső lista

40, 69, 54, 58, 62]
45, 69, 25, 54, 38]
63, 40, 24, 45, 54]
70, 60, 25, 42, 51]

A végeredmény egy lista

43,51,58,70,75

Online futtatás;






Nincsenek megjegyzések:

Megjegyzés küldése