2025. augusztus 6., szerda

A skandináv lottószámok generálása python programozási nyelven!

Azt kérdezték a tanulók tőlem az iskolában, hogy lehet nyerni a lottón? 

Mennyi a valószínűsége, annak, hogy az általam véletlenül generált számok lesznek a nyerők? A valószínűségszámítás célja a véletlen modellezése, aminek az eredménye nem jósolható meg. Előadásomban a nagy számok törvénye és a káoszelméletet és a fraktálokat is helyet kaptak. A kaszinók azért nyereségesek, mert a matematikai modell alapján akkor zárnak be amikor plusszosak. Akkor alapozhatunk a véletlen törvényszerüségei, ha az eseményt sokszor meg tudjuk ismételni, azonos körülmények között. Jó példa erre a szerencsejáték, a lottó, a tőzsde- árfolyamingadozások, biztosítás-káresemények, biológia-járvány terjedése, cryptovaluta árfolyam ingadozás, időjárás előrejelzés stb.) Célunk, hogy ezekre a véletlen jelenségekre matematikai modellt alkossunk, mégpedig úgy, hogy a modellből kiszámolt eredmények jól használhatóak legyenek a gyakorlatban. Az eredményt nem tudjuk előre megjósolni, tudjuk, hogy mik a lehetséges kimenetelek. 





Elméletem szerint, ha kisorsolok 7 számot azt sorsoláskor eltalálniuk 1 : 3.362.260, ergó ha a saját generálásomat megismétlem addig amíg csak 7 marad ki, akkor arra a maradék 7 számra lesz a legtöbb esély.

Használjatok A Google Colab-ot (vagy Colaboratory) egy ingyenes webalkalmazás, ami lehetővé teszi Python kódok írását és futtatását a böngészőben, akár egyszerre több felhasználó számára is. A Colab a Google felhőjében futtatja a programot, GPU vagy akár TPU támogatással, ezért a ideális lehetőség adatelemzésre és gépi tanulás számára.


Skandináv lottó esetén 1 :3,3 millióhoz (ebbe benne van a kétszeri sorsolás)
Matematikailag;
35 alatt a 7, azaz még egyszer:
(35 x 34 x 33 x 32 x 31 x 30 x 29) / (7 x 6 x 5 x 4 x 3 x 2 x 1) = 6.724.520.
A lottó telitalálatos szelvény nyerési esélyét egy húzás esetén az 1 / (35 alatt a 7) képlettel lehet kiszámolni, de mivel két nyerő számsort sorsolnak ki egy játékban, így a megfelelő képlet a 2 / (35 alatt a 7), azaz
2 / ((35 x 34 x 33 x 32 x 31 x 30 x 29) / (7 x 6 x 5 x 4 x 3 x 2 x 1)) =
2 / 6.724.520, ami egyszerűsítve:
1 / 3.362.260.
Tehát 0,000000297 a valósínűsége a telitalálatnak.
Összes kihúzható számvariáció (db): 35!/28!=33891580800


A képlet;




online ; https://www.programiz.com/python-programming/online-compiler/
Példa program forrás;

import random
def skandilotto(korabbi, hanyat=7, mini=1, maxi=35):
       
    ciklus1 = [num for num in range(mini, maxi + 1) if num not in korabbi]
       
    if len(ciklus1) < hanyat:
        raise ValueError("Nincs elég.")
       
    sorsolt = random.sample(ciklus1, hanyat)
       
    sorsolt.sort()
    
    return sorsolt
kivetelek = [ 8, 14, 16, 18, 24, 28, 31]
lottoszamok = generate_lotto(kivetelek)
print(lottoszamok)

Érthetőbben;
import random
def generate_lotto(previous_numbers, total_numbers=7, min_number=1, max_number=35):
    """
     
    Args:
        previous_numbers (list): kivetelek.
        total_numbers (int): (Hanyat:).
        min_number (int): (tol).
        max_number (int): (ig:).
        
    Returns:
        list: kivetelek
    """
    # Sorsol, kivéve
    available_numbers = [num for num in range(min_number, max_number + 1) if num not in previous_numbers]
    
    # van eleg
    if len(available_numbers) < total_numbers:
        raise ValueError("keves.")
    
    # veletlen
    selected_numbers = random.sample(available_numbers, total_numbers)
    
    # sorba
    selected_numbers.sort()
    
    return selected_numbers

# kivetelek
previous_week_numbers = [ 8, 14, 16, 18, 24, 28, 31, 17, 30, 33, 35, 7, 9, 4, 20, 27, 1, 11, 12, 26, 34,10, 32, 2, 6, 13, 19, 23, 1, 2]
lotto_numbers = generate_lotto(previous_week_numbers)

print("eredmeny:")
print(lotto_numbers)

Példa;


Az ötös lottónál 1:43,9 millióhoz , az összes kihúzható számvariáció (db): 90!/85!=5273912160
Telitalálat esély (%): 0.00000001896125626787

A hatosnál az összes kihúzható számvariáció (db): 45!/39!=5864443200
A hatosnál   1:8,1 millióhoz
Telitalálat esély (%): 0.00000001705191722208


Ha AI-t szeretnél használni az ingyenesen használható AI eszközök között számos kiemelkedőt találunk, attól függően, hogy milyen célokra keresed őket. Íme néhány népszerű lehetőség:ChatGPT: Kiváló nyelvi modell, amely szöveg alapú kérdésekre válaszolhat, segíthet írásban, ötletek generálásában és tanulásban. Google Colab: Ingyenes Python notebook szolgáltatás, amely lehetővé teszi az AI és gépi tanulási  projektek futtatását a Google infrastruktúráján.Hugging Face: Nagy nyílt forráskódú AI modellek gyűjteménye, amely lehetővé teszi a felhasználók számára, hogy saját AI modelljeiket képezzék nyelvi és képfeldolgozási feladatokhoz.DALL-E Mini: Kép-generáló AI, amely szöveges leírások alapján képeket tud készíteni, kis méretű és ingyenesen elérhető.RunwayML: Ingyenes tervezési és AI eszközök, amelyek lehetővé teszik kreatív projektek létrehozását videó- és fényképezéshez.Mindezek az eszközök különböző igényeket szolgálnak ki, érdemes azokat a céljaidhoz legjobban illeszkedőket választani.

Augusztus 20.-án a 5,8,14,21,26,30,35 számokat fogják húzni!

Nincsenek megjegyzések:

Megjegyzés küldése