Advertisement
MrBlaise

Emelt informatika érettségi 2010 május - Helyjegy

Oct 2nd, 2013
194
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 2.84 KB | None | 0 0
  1. #!/usr/bin/env python3
  2.  
  3. # Rostás Balázs - Emelt informatika érettségi 2010 május - Helyjegy
  4.  
  5. # 1.feladat
  6. fajlBe = open("eladott.txt", "r")
  7.  
  8. buszAdat = fajlBe.readline()
  9. buszAdat = buszAdat.strip().split()
  10. buszAdat = [int(adat) for adat in buszAdat]
  11.  
  12. jegyAdat = [adat.strip().split() for adat in fajlBe ]
  13. jegyAdat = [ [ int(adat) for adat in lista ] for lista in jegyAdat]
  14.  
  15. fajlBe.close()
  16.  
  17. print("1. feladat - eladott.txt beolvasása - KÉSZ!\n")
  18.  
  19. # 2.feladat
  20. print("2. feladat:")
  21. 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="")
  22.    
  23.  
  24. # 3.feladat
  25. print("\n3. feladat:\nUtasok sorszáma, akik végigutazták a ", buszAdat[1], "km hosszú távot:", sep="")
  26. for i in range(len(jegyAdat)):
  27.     if jegyAdat[i][2]-jegyAdat[i][1] == buszAdat[1]:
  28.         print(i+1, end=" ")
  29. print()
  30.  
  31. # 4.feladat
  32. print("\n4. feladat:")
  33.  
  34. bevetel = 0
  35. bevetelPerFo = 0
  36.  
  37. for adat in jegyAdat:
  38.  
  39.     utazas = adat[2]-adat[1]
  40.    
  41.     if utazas % 10 != 0:
  42.         bevetelPerFo = ((( (utazas + 10) - (utazas % 10) )/10) *  buszAdat[2])
  43.     else:
  44.         bevetelPerFo = utazas/10 * buszAdat[2]
  45.     if bevetelPerFo % 5 != 0:
  46.         bevetel += int(round(bevetelPerFo/5)*5)
  47.     else:
  48.         bevetel += int(bevetelPerFo)
  49.  
  50. print("A társaság bevétele: ", bevetel, "Ft", sep="")
  51.  
  52. # 5.feladat
  53. print("\n5. feladat:")
  54.  
  55. utolsoMegallo = 0
  56. leszallo = 0
  57. felszallo = 0
  58.  
  59.  
  60. for adat in jegyAdat:
  61.     if  adat[1] > utolsoMegallo:
  62.         utolsoMegallo = adat[1]
  63.  
  64. for adat in jegyAdat:
  65.     if adat[2] == utolsoMegallo:
  66.         leszallo += 1
  67.     elif adat[1] == utolsoMegallo:
  68.         felszallo += 1
  69.  
  70. print("A végállomást megelőző megállóban", leszallo, "fő szállt le, és", felszallo, "fő szállt fel.")
  71.  
  72. # 6.feladat
  73. print("\n6. feladat:")
  74.  
  75. megallok = []
  76.  
  77. for adat in jegyAdat:
  78.     if adat[1] not in megallok:
  79.         megallok.append(adat[1])
  80.     if adat[2] not in megallok:
  81.         megallok.append(adat[2])
  82.  
  83. print("A busz összesen",len(megallok)-2, "helyen állt meg.")
  84.  
  85. # 7.feladat
  86. print("\n7. feladat:")
  87.  
  88. fajlKi = open("kihol.txt", "w")
  89.  
  90. kiinduloPont = int(input("Kérem adja meg a kiindulási pontot: "))
  91. ulesLista = [ [i,0] for i in range(1,49)]
  92.  
  93. sorSzamLista = []
  94. szamlalo = 1
  95.  
  96.  
  97. for adat in jegyAdat:
  98.     sorSzamLista.append([adat[0],adat[1],adat[2],szamlalo])
  99.     szamlalo += 1
  100.  
  101. for adat in sorSzamLista:
  102.     if adat[1] <= kiinduloPont < adat[2]:
  103.        ulesLista[adat[0]-1] = [adat[0], adat[3]]
  104.  
  105.  
  106. ulesLista = sorted(ulesLista, key=lambda x: x[0])
  107.  
  108. for adat in ulesLista:
  109.     if adat[1] == 0:
  110.         print(adat[0],". ülés: üres", sep="", file=fajlKi)
  111.     else:
  112.         print(adat[0],". ülés: ", adat[1], ". utas", sep="", file=fajlKi)
  113.  
  114.  
  115. fajlKi.close()
  116.  
  117. print("Adatok kiírása 'kihol.txt' fájlba - KÉSZ!")
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement