Skip to content

Instantly share code, notes, and snippets.

Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save MrBlaise/7022794 to your computer and use it in GitHub Desktop.
Save MrBlaise/7022794 to your computer and use it in GitHub Desktop.
Emelt informatika érettségi 2010 május - Helyjegy / Solution for Advanced Computer Science Matura 2010 may (Hungary)
#!/usr/bin/env python3
# Rostás Balázs - Emelt informatika érettségi 2010 május - Helyjegy
# 1.feladat
fajlBe = open("eladott.txt", "r")
buszAdat = fajlBe.readline()
buszAdat = buszAdat.strip().split()
buszAdat = [int(adat) for adat in buszAdat]
jegyAdat = [adat.strip().split() for adat in fajlBe ]
jegyAdat = [ [ int(adat) for adat in lista ] for lista in jegyAdat]
fajlBe.close()
print("1. feladat - eladott.txt beolvasása - KÉSZ!\n")
# 2.feladat
print("2. feladat:")
print("Az utolsó jegyvásárló ülés száma ",jegyAdat[-1][0],", a beutazott távolság: ", jegyAdat[-1][2]-jegyAdat[-1][1],"km" , sep="")
# 3.feladat
print("\n3. feladat:\nUtasok sorszáma, akik végigutazták a ", buszAdat[1], "km hosszú távot:", sep="")
for i in range(len(jegyAdat)):
if jegyAdat[i][2]-jegyAdat[i][1] == buszAdat[1]:
print(i+1, end=" ")
print()
# 4.feladat
print("\n4. feladat:")
bevetel = 0
bevetelPerFo = 0
for adat in jegyAdat:
utazas = adat[2]-adat[1]
if utazas % 10 != 0:
bevetelPerFo = ((( (utazas + 10) - (utazas % 10) )/10) * buszAdat[2])
else:
bevetelPerFo = utazas/10 * buszAdat[2]
if bevetelPerFo % 5 != 0:
bevetel += int(round(bevetelPerFo/5)*5)
else:
bevetel += int(bevetelPerFo)
print("A társaság bevétele: ", bevetel, "Ft", sep="")
# 5.feladat
print("\n5. feladat:")
utolsoMegallo = 0
leszallo = 0
felszallo = 0
for adat in jegyAdat:
if adat[1] > utolsoMegallo:
utolsoMegallo = adat[1]
for adat in jegyAdat:
if adat[2] == utolsoMegallo:
leszallo += 1
elif adat[1] == utolsoMegallo:
felszallo += 1
print("A végállomást megelőző megállóban", leszallo, "fő szállt le, és", felszallo, "fő szállt fel.")
# 6.feladat
print("\n6. feladat:")
megallok = []
for adat in jegyAdat:
if adat[1] not in megallok:
megallok.append(adat[1])
if adat[2] not in megallok:
megallok.append(adat[2])
print("A busz összesen",len(megallok)-2, "helyen állt meg.")
# 7.feladat
print("\n7. feladat:")
fajlKi = open("kihol.txt", "w")
kiinduloPont = int(input("Kérem adja meg a kiindulási pontot: "))
ulesLista = [ [i,0] for i in range(1,49)]
sorSzamLista = []
szamlalo = 1
for adat in jegyAdat:
sorSzamLista.append([adat[0],adat[1],adat[2],szamlalo])
szamlalo += 1
for adat in sorSzamLista:
if adat[1] <= kiinduloPont < adat[2]:
ulesLista[adat[0]-1] = [adat[0], adat[3]]
ulesLista = sorted(ulesLista, key=lambda x: x[0])
for adat in ulesLista:
if adat[1] == 0:
print(adat[0],". ülés: üres", sep="", file=fajlKi)
else:
print(adat[0],". ülés: ", adat[1], ". utas", sep="", file=fajlKi)
fajlKi.close()
print("Adatok kiírása 'kihol.txt' fájlba - KÉSZ!")
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment