Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #!/usr/bin/env python3
- # A legelső sor jelzi a gépnek hol található a python fordító a gépben és melyik verzióját használja. /usr/bin/env python3 env szócska univerzális, minden operációs rendszeren működik!
- # A python3 jelzi, hogy ha esetleg több verzió van telepítve akkor a 3-asat használja!
- # Rostás Balázs - Emelt informatika érettségi 2012 május - Futár
- # Díjkalkuláció függvény létrehozása
- def fizetes(km):
- if km <= 2:
- return(500)
- elif km <= 5:
- return(700)
- elif km <= 10:
- return(900)
- elif km <= 20:
- return(1400)
- elif km <= 30:
- return(2000)
- else:
- return("Ekkora távot nem tesz meg a futár egy fuvar alatt!")
- # Más megoldás a fizetés kiszámolására
- # Ha többsoros megjegyzést szeretnénk létrehozni három aposztrof (''') jelzi a kezdetét és végét
- '''
- def fizetes(km):
- tarifa = {2:500, 5:700, 10:900, 20: 1400, 30:2000}
- összeg = 0
- for kulcs in sorted(tarifa.keys()):
- if km <= kulcs:
- összeg = tarifa[kulcs]
- return(összeg)
- '''
- # 1. feladat - tavok.txt beolvasása
- tavok_be = open("tavok.txt","r")
- utak = []
- for sor in tavok_be:
- s = sor.split() # split() Minden szót - jelen esetben a számokat - listába rendez egyesével
- utak.append ([int(s[0]), int(s[1]), int(s[2])] )
- tavok_be.close()
- utak.sort()
- # 2. feladat - hét legelső útja kilométerben
- print("2. feladat: ")
- print("A hét legelső útja", utak[0][2], "km hosszú volt.")
- # 3. feladat - hét utolsó útja kilométerben
- print("\n3. feladat: ")
- print("A hét utolsú útja", utak[-1][2], "km hosszú volt.")
- # Előkészületek a következő feladatra
- fuvar_szam = [0]*8 # Fuvarok száma per nap
- tav_per_nap = [0]*8 # Távolságok összege per nap
- for ut in utak:
- fuvar_szam[ut[0]] += 1
- tav_per_nap[ut[0]] += ut[2]
- # 4. feladat - hét hányadik napjain nem dolgozott a futár
- print("\n4. feladat: ")
- print("Szabadnap(ok):", end=' ')
- for i in range(1,8):
- if fuvar_szam[i] == 0:
- print(i, end=' ')
- # 5. feladat - melyik nap volt a legtöbb fuva
- print("\n\n5. feladat: ")
- x = fuvar_szam.index(max(fuvar_szam))
- print("A legtőbb fuvar az ",x,". napon volt.", sep='')
- # 6. feladat - km tekerés per nap
- print("\n6. feladat")
- for i in range(1,8):
- print(i,". nap: ",tav_per_nap[i], " km", sep="")
- # 7. feladat - fizetés kiszámítása a megadott út hossz alapján
- print("\n7. feladat")
- km = int(input("A fizetés kiszámolásához adja meg a megtett utat km-ben: "))
- if fizetes(km) == str(fizetes(km)): # Ez csak szépítés nem kell a feladatban
- print(fizetes(km))
- else:
- print(km, " km út megtétele után a futár: ", fizetes(km), "Ft-ot kap.", sep="") # Ez a lényeg
- # 8-9. feladat - fizetés napokra és utakra lebontva, majd a heti fizettség
- heti = 0
- print("\n8. feladat")
- tavok_ki = open("dijazas.txt", "w")
- for ut in utak:
- nap = ut[0]
- fuvar = ut[1]
- ar = fizetes(ut[2])
- heti += ar
- tavok_ki.write(str(nap)+". nap "+str(fuvar)+". út: "+str(ar)+" Ft\n")
- tavok_ki.close()
- print("A \'dijazas.txt\' fájl létrehozva!")
- print("\n9.feladat")
- print("A futár heti fizetsége: ", heti, "Ft")
- input("\nA program befejezéséhez kérem nyomjon ENTERT-t...")
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement