"""
2016. május: Ötszáz
@author Klemand66
"""

print("\n1. feladat\n")

betxt = open("penztar.txt")

kosarak, cikkek = [], []

for sor in betxt:
    sor=sor.strip()
    if sor=="F":
        kosarak.append(cikkek)
        cikkek=[]
    else:
        cikkek.append(sor)    

betxt.close()
print("A beolvasás és a szövegfájl lezárása sikeresen befejeződött.")



print("\n2. feladat\n")

print(f'A fizetések száma: {len(kosarak)}')



print("\n3. feladat\n")

print(f'Az első vásárló {len(kosarak[0])} darab árucikket vásárolt.')



print("\n4. feladat\n")

aktssz=int(input(f'Kérem egy vásárlás sorszámát (1 <= sorszám <= {len(kosarak)}): '))
aktcikk=input(f'Kérem egy árucikk nevét (Pl. toll, colostok, szatyor): ')
aktdb=int(input(f'Kérem a vásárolt darabszámot (1 <= db <= 20): '))

        

print("\n5. feladat\n")

aktindexek=list(filter(lambda i: aktcikk in kosarak[i],range(len(kosarak))))
print(f'Az első vásárlás sorszáma: {aktindexek[0]+1}')
print(f'Az utolsó vásárlás sorszáma: {aktindexek[-1]+1}')
print(f'{len(aktindexek)} vásárlás során vettek belőle.')



print("\n6. feladat\n")

def ertek(darab):
    if darab==1:
        return 500
    elif darab==2:
        return 950
    else:
        return 950+(darab-2)*400

print(f'{aktdb} darab azonos árucikk vételekor fizetendő összeg: {ertek(aktdb)} Ft.')



print("\n7. feladat\n")

# Egy konkrét vásárlás feldolgozása:
kosar=kosarak[aktssz-1]  
cikklista, dblista= [], []

for i,cikk in enumerate(kosar):
    if cikk in cikklista:
        aktindex=cikklista.index(cikk)
        dblista[aktindex]+=1
    else:
        cikklista.append(cikk)
        dblista.append(1)

for i in range(len(cikklista)):
    print(f'{dblista[i]} {cikklista[i]}') 



print("\n8. feladat\n")

# Az előbbi algoritmus az összes vásárlásra kiterjesztve:
cikklistak, dblistak= [], []

for kosar in kosarak:  
    cikklista, dblista= [], []
    for i,cikk in enumerate(kosar):
        if cikk in cikklista:
            aktindex=cikklista.index(cikk)
            dblista[aktindex]+=1
        else:
            cikklista.append(cikk)
            dblista.append(1)
    cikklistak.append(cikklista)
    dblistak.append(dblista)

kitxt = open("osszeg.txt","w")

for i,dblista in enumerate(dblistak):
    arlista=list(map(lambda db: ertek(db),dblista))
    kitxt.write(f'{i+1}: {sum(arlista)}\n')

kitxt.close()
print("A kiíratás és a szövegfájl lezárása sikeresen befejeződött.")


input("\nA befejezéshez nyomd meg az ENTER billentyűt!")
