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

Országos Futóverseny

Kedves diákjaim! Itt egy nagyszabású futóverseny eredményeit dolgozzuk fel!
------------
# Részeredmények

file_content = """
Anna F 3600
Bela F 3500
Cili N 3700
Dora N 3400
Ede F 3900
"""

# 1. Beolvasás és adatszerkezet kialakítása
versenyzok = []
for sor in file_content.strip().splitlines():
    adatok = sor.strip().split()
    if len(adatok) == 3:
        versenyzo = {
            'nev': adatok[0],
            'kategoria': adatok[1],
            'ido': int(adatok[2])
        }
        versenyzok.append(versenyzo)

# 2. Célba érkezettek száma
print(f"2. feladat: Célba érkezettek száma: {len(versenyzok)} fő")

# 3. Kategória győztesek meghatározása
legjobb_ferfi = None
legjobb_no = None

for v in versenyzok:
    if v['kategoria'] == 'F':
        if legjobb_ferfi is None or v['ido'] < legjobb_ferfi['ido']:
            legjobb_ferfi = v
    elif v['kategoria'] == 'N':
        if legjobb_no is None or v['ido'] < legjobb_no['ido']:
            legjobb_no = v

if legjobb_ferfi:
    print(f"3. feladat: Férfi győztes: {legjobb_ferfi['nev']} ({legjobb_ferfi['ido']} másodperc)")
if legjobb_no:
    print(f"3. feladat: Női győztes: {legjobb_no['nev']} ({legjobb_no['ido']} másodperc)")

# 4. Átlagidő megadott kategóriában
valasztott_kat = "F"

ossz_ido = 0
kat_db = 0
for v in versenyzok:
    if v['kategoria'] == valasztott_kat:
        ossz_ido += v['ido']
        kat_db += 1

if kat_db > 0:
    atlag = ossz_ido / kat_db
    print(f"4. feladat: A(z) {valasztott_kat} kategória átlagideje: {atlag:.2f} másodperc")

# 5. Eredmény mentése fájlba
ossz_ido_f = 0
db_f = 0
ossz_ido_n = 0
db_n = 0

for v in versenyzok:
    if v['kategoria'] == 'F':
        ossz_ido_f += v['ido']
        db_f += 1
    elif v['kategoria'] == 'N':
        ossz_ido_n += v['ido']
        db_n += 1

atlag_f = ossz_ido_f / db_f if db_f > 0 else 0
atlag_n = ossz_ido_n / db_n if db_n > 0 else 0

with open('eredmenyek.txt', 'w', encoding='utf-8') as ki_fajl:
    ki_fajl.write("Férfiak eltérése az átlagtól:\n")
    for v in versenyzok:
        if v['kategoria'] == 'F':
            elteres = v['ido'] - atlag_f
            ki_fajl.write(f"{v['nev']} {elteres:.2f}\n")

    ki_fajl.write("\nNők eltérése az átlagtól:\n")
    for v in versenyzok:
        if v['kategoria'] == 'N':
            elteres = v['ido'] - atlag_n
            ki_fajl.write(f"{v['nev']} {elteres:.2f}\n")

print("5. feladat: Az 'eredmenyek.txt' fájl sikeresen elkészült.")

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

Célba érkezettek száma: 5 fő
Férfi győztes: Bela (3500 másodperc)
Női győztes: Dora (3400 másodperc)
 A(z) F kategória átlagideje: 3666.67 másodperc
Az 'eredmenyek.txt' fájl sikeresen elkészült.
------------
Futtatás; https://onecompiler.com/python#draft-tdxd

Nincsenek megjegyzések:

Megjegyzés küldése