2026. május 26., kedd

Python gyakorlat

Feladat; A skandináv lottó kézi sorsolásának nyerőszámait láthatod itt időrendben, írj egy programot pythonban, ami kiválasztja azt a 7 számot amit a legrégebben húztak;

Megoldás;
 
draws = [
    [15, 17, 22, 24, 25, 27, 33],
    [8, 12, 13, 17, 18, 32, 33],
    [1, 2, 9, 11, 18, 29, 30],
    [8, 15, 23, 25, 26, 30, 34],
    [2, 4, 8, 11, 26, 27, 28],
    [7, 12, 16, 25, 30, 32, 33],
    [2, 4, 12, 21, 25, 30, 33],
    [9, 14, 15, 17, 19, 21, 23],
    [7, 10, 17, 20, 22, 23, 29],
    [1, 7, 10, 18, 20, 22, 35],
    [1, 3, 7, 17, 19, 21, 28],
    [5, 24, 25, 27, 31, 32, 33],
    [2, 7, 9, 11, 21, 30, 31],
]

last_seen = {}

for i, row in enumerate(draws):
    for n in row:
        if n not in last_seen:
            last_seen[n] = i

sorted_numbers = sorted(last_seen.items(), key=lambda x: (x[1], x[0]))
result = [n for n, _ in sorted_numbers[:7]]

print(result)
-----------------------


# -*- coding: utf-8 -*-
# A Skandináv lottó kézi sorsolásának nyerőszámait láthatod itt időrendben.
# A program kiválasztja azt a 7 számot, amelyeket a legrégebben húztak.

draws_raw = """15, 17, 22, 24, 25, 27, 33 
8, 12, 13, 17, 18, 32, 33
1, 2, 9, 11, 18, 29, 30
8, 15, 23, 25, 26, 30, 34
2, 4, 8, 11, 26, 27, 28
7, 12, 16, 25, 30, 32, 33
2, 4, 12, 21, 25, 30, 33
9, 14, 15, 17, 19, 21, 23
7, 10, 17, 20, 22, 23, 29
1, 7, 10, 18, 20, 22, 35
1, 3, 7, 17, 19, 21, 28
5, 24, 25, 27, 31, 32, 33
2, 7, 9, 11, 21, 30, 31
2, 4, 12, 21, 25, 30, 33
9, 14, 15, 17, 19, 21, 23
7, 10, 17, 20, 22, 23, 29
1, 7, 10, 18, 20, 22, 35
1, 3, 7, 17, 19, 21, 28
5, 24, 25, 27, 31, 32, 33
2, 7, 9, 11, 21, 30, 31
2, 5, 6, 8, 9, 14, 33
3, 12, 13, 14, 15, 21, 26
5, 8, 9, 13, 16, 22, 27
2, 3, 5, 19, 26, 27, 28
5, 15, 22, 23, 28, 32, 33
7, 8, 10, 14, 15, 27, 31
11, 17, 18, 25, 26, 29, 35
2, 10, 13, 16, 17, 27, 34
4, 5, 10, 15, 22, 30, 35
5, 12, 13, 18, 24, 25, 35
1, 5, 9, 14, 26, 28, 30
1, 9, 10, 16, 20, 29, 33
6, 9, 17, 22, 25, 28, 34
5, 6, 15, 16, 18, 27, 33
4, 7, 14, 21, 23, 24, 33""".splitlines()

# A sorsolások feldolgozása
all_draws = []
for line in draws_raw:
    cleaned_line = line.replace(' ', '').strip()
    numbers = list(map(int, cleaned_line.split(',')))
    all_draws.append(numbers)

# Minden számra tároljuk az első sorsolás indexét (azt, hogy melyik körben húzták legrégebben)
first_occurrence = {}
for draw_idx, draw in enumerate(all_draws):
    for num in draw:
        if num not in first_occurrence:
            first_occurrence[num] = draw_idx

# A legrégebben húzott 7 szám (legkorábban megjelenők)
earliest = sorted(first_occurrence.keys(), key=lambda x: first_occurrence[x])[:7]

# Eredmény kiírása
print("A legrégebben húzott 7 szám:", sorted(earliest))
-------------------
----------------------
# -*- coding: utf-8 -*-
# A Skandináv lottó kézi sorsolásának nyerőszámait láthatod itt időrendben.
# A program kiválasztja azt a 7 számot, amelyeket a legrégebben húztak.

draws_raw = """15, 17, 22, 24, 25, 27, 33 
8, 12, 13, 17, 18, 32, 33
1, 2, 9, 11, 18, 29, 30
8, 15, 23, 25, 26, 30, 34
2, 4, 8, 11, 26, 27, 28
7, 12, 16, 25, 30, 32, 33
2, 4, 12, 21, 25, 30, 33
9, 14, 15, 17, 19, 21, 23
7, 10, 17, 20, 22, 23, 29
1, 7, 10, 18, 20, 22, 35
1, 3, 7, 17, 19, 21, 28
5, 24, 25, 27, 31, 32, 33
2, 7, 9, 11, 21, 30, 31
2, 4, 12, 21, 25, 30, 33
9, 14, 15, 17, 19, 21, 23
7, 10, 17, 20, 22, 23, 29
1, 7, 10, 18, 20, 22, 35
1, 3, 7, 17, 19, 21, 28
5, 24, 25, 27, 31, 32, 33
2, 7, 9, 11, 21, 30, 31
2, 5, 6, 8, 9, 14, 33
3, 12, 13, 14, 15, 21, 26
5, 8, 9, 13, 16, 22, 27
2, 3, 5, 19, 26, 27, 28
5, 15, 22, 23, 28, 32, 33
7, 8, 10, 14, 15, 27, 31
11, 17, 18, 25, 26, 29, 35
2, 10, 13, 16, 17, 27, 34
4, 5, 10, 15, 22, 30, 35
5, 12, 13, 18, 24, 25, 35
1, 5, 9, 14, 26, 28, 30
1, 9, 10, 16, 20, 29, 33
6, 9, 17, 22, 25, 28, 34
5, 6, 15, 16, 18, 27, 33
4, 7, 14, 21, 23, 24, 33""".splitlines()

# A sorsolások feldolgozása
all_draws = []
for line in draws_raw:
    cleaned_line = line.replace(' ', '').strip()
    numbers = list(map(int, cleaned_line.split(',')))
    all_draws.append(numbers)

# Minden számra tároljuk az első sorsolás indexét (azt, hogy melyik körben húzták legrégebben)
first_occurrence = {}
for draw_idx, draw in enumerate(all_draws):
    for num in draw:
        if num not in first_occurrence:
            first_occurrence[num] = draw_idx

# A legrégebben húzott 7 szám (legkorábban megjelenők)
earliest = sorted(first_occurrence.keys(), key=lambda x: first_occurrence[x])[:7]

# Eredmény kiírása
print("A legrégebben húzott 7 szám:", sorted(earliest))

---------------
magyar karakterrel
# -*- coding: utf-8 -*- magyar
file beolnasása
with open('adatok.txt''r', encoding='utf-8'as fajltartalom = fajl.read() print(tartalom)

Az adatok alapján mely számoknak van a legnagyobb valószinüsége, hogy a következő sorsoláson kihuzzákA Skandnáv lottó esetén minden számnak matematikailag szabálya a valószínűsége , hogy a következő sorsoláson kihúzzák (a szerint minden szám független, minden húzásnál minden számot “újra keverik”). Viszont a talált adatok alapján modellezhetsz egy heurisztikát : pl. azt mondhatjuk, hogy a leggyakrabban előforduló számoknak „pszichológiai” vagy statisztikai szempontból nagyobb az esélye, hogy újra előkerülnek, de ez nem jelent valódi valószínűség-növekedést.scribd+1
Mit mutatnak az adatok?
A korábban ajánlott sorsolások alapján számolgatja a leggyakrabban előforduló számokat (a legtöbbször kihúzottak) a következők közül:

•24, 25, 27, 30, 33 nagyon sokszor szerepelnek (10–13-szor körül).

•2, 5, 7, 9, 17, 21, 22, 23, 26, 31, 32 is gyakran, de valamivel ritkábban.

Ha azt a kérdést értelmezték, hogy mely számoknak a „legnagyobb esélye” van újra kihúzásra a statisztikai minta alapján , a válasz a választás alapján:

•24, 25, 27, 30, 33 – a legtöbb szélsőségesen gyakori szám ebben a sorsolási listában. 

•Ezen belül a 25, 27, 30, 33 rendkívül stabilan gyakoriak.

Figyelmeztetés fontos statisztikai értelemben
•A lottó valóban emlékezetmentes : a múltbeli húzások nem befolyásolják a jövőbeni számokat.index
•A „legnagyobb valószínűség” csak abban az értelemben értelmezhető, ha hiszünk abban, hogy a lottó nem teljesen véletlen, vagy ha pszichológiai / játékstratégiai szempontból szeretnénk „nagyobb eséllyel játszani”.

------------------

A legrégebben kihúzott 18 számból véletlenszerüen generál 7 számot a program;
import random; print(*random.sample([1,2,8,9,11,12,13,15,17,18,22,24,25,27,29,30,32,33], 7))


Leggyakoribb számok 19, 14, 25, 11, 30, 6, 5
Legritkább számok 17, 33, 2, 12, 20, 9, 15
A te számsorod (1, 2, 8, 9, 11, 12, 13, 15, 17, 18, 22, 24, 25, 27, 29, 30, 32, 33):
Stratégiai elemzés
Felső gyakori 11, 25, 30
Közepes 1, 6(hiányzik), 14(hiányzik), 18, 24, 29
Ritka 2, 9, 12, 15, 17, 33
Javaslat: Ha játszol, tarts meg 1-2 számot az előző heti nyerőből, és 5-6 újat!

Nincsenek megjegyzések:

Megjegyzés küldése