2026. június 25., csütörtök

Vasútállomási késések szűrése

Kedves Diákjaim! Ez a feladat az emelt szintű érettségik egyik legnehezebb részét, az összetett szövegfeldolgozást és az időintervallum-számítást kombinálja. 
A Feladat: Állomásfőnök egy vasúti statisztikai adatok alapján a vonatok érkezési és indulási idejét formátumban, például: Célállomás;Óra:Perc;Óra:Perc.Írj egy Python programot, amely az alábbi lépések szerint elemzi az adatokat:
Tárold el az adatokat egy megfelelő adatszerkezetben (pl. szótárakat tartalmazó listában).
Keresés: Határozd meg azt a járatot, amelyik a legtöbb időt töltötte az állomáson!
Szűrés: Írd ki egy új hosszuk.txt nevű fájlba azoknak a vonatoknak a célállomását és az állomáson töltött idejét (percben), amelyeknél ez az idő meghaladja a 45 percet!
-----------
adatok = []

# Adatok: célállomás; érkezés; indulás
V_sorok = [
    "Budapest;08:10;08:35",
    "Szeged;09:00;09:50",
    "Debrecen;10:15;10:40",
    "Pécs;11:20;12:30",
    "Győr;13:05;13:20",
    "Miskolc;14:10;15:05",
    "Eger;16:00;16:40",
    "Kecskemét;17:25;18:15"
]

for sor in V_sorok:
    cel, erkezes, indulas = sor.strip().split(';')

    e_ora, e_perc = map(int, erkezes.split(':'))
    i_ora, i_perc = map(int, indulas.split(':'))

    erkezett_percben = e_ora * 60 + e_perc
    indult_percben = i_ora * 60 + i_perc

    if indult_percben < erkezett_percben:
        indult_percben += 24 * 60

    tart_ido = indult_percben - erkezett_percben

    adatok.append({
        'celallomas': cel,
        'ido': tart_ido
    })

# Maximumkeresés
max_ido = -1
max_cel = ""
for vonat in adatok:
    if vonat['ido'] > max_ido:
        max_ido = vonat['ido']
        max_cel = vonat['celallomas']

print(f"A legtöbbet várakozó vonat célállomása: {max_cel}, idő: {max_ido} perc.")

# Szűrés és kiírás
with open('hosszuk.txt', 'w', encoding='utf-8') as ki_fajl:
    for vonat in adatok:
        if vonat['ido'] > 45:
            ki_fajl.write(f"{vonat['celallomas']};{vonat['ido']}\n")

print("A szűrt lista kiírása megtörtént a hosszuk.txt fájlba.")
--------------
Eredmény; A legtöbbet várakozó vonat célállomása: Pécs, idő: 70 perc.
A szűrt lista kiírása megtörtént a hosszuk.txt fájlba.
--------------
Futtatás; https://onecompiler.com/python#draft-tdxd

Nincsenek megjegyzések:

Megjegyzés küldése