import random

# 1. feladat
adatok = []
be = open("felszam.txt")
i = 0
for sor in be.readlines():
    if i % 2 == 0:
        adatok.append([sor.strip()])
    else:
        valasz, pont, tema = sor.split()
        adatok[-1].extend([int(valasz), int(pont), tema])
    i += 1
be.close()

# 2. feladat
print("2. feladat\nA fájlban {} kérdés van".format(len(adatok)))

# 3. feladat
matdb = [0]*3
for kerdes, valasz, pont, tema in adatok:
    if tema == 'matematika':
        matdb[pont-1] += 1
print("3. feladat\nAz adatfájlban {} matematika feladat van, "
      "1 pontot ér {} feladat, 2 pontot ér {} feladat, 3 pontot ér {} feladat."
      .format(sum(matdb), matdb[0], matdb[1], matdb[2]))

# 4. feladat
adatok.sort(key=lambda x: x[1])
print("4. feladat\nA válaszok számértéke {} és {} között van.".format(adatok[0][1], adatok[-1][1]))

# 5. feladat
print("5. feladat\nTémakörök:")
for tema in set([x[3] for x in adatok]):
    print(tema)

# 6. feladat
temakor = input("Milyen témakörből szeretne kérdést kapni? ")
temakerdesek = [x for x in adatok if x[3] == temakor]
temakerdes = temakerdesek[random.randrange(len(temakerdesek))]
valasz = int(input("{}: ".format(temakerdes[0])))
if valasz == temakerdes[1]:
    print("Helyes: A válasz {} pontot ér.".format(temakerdes[2]))
else:
    print("Helyes: A válasz 0 pontot ér.\nA helyes válasz: {}".format(temakerdes[1]))

# 7. feladat
kerdesszamok = []
ki = open("tesztfel.txt", "w")
ossz = 0
while len(kerdesszamok) != 10:
    szam = random.randrange(len(adatok))
    if szam not in kerdesszamok:
        kerdesszamok.append(szam)
        ossz += adatok[szam-1][2]
        print(adatok[szam-1][2], adatok[szam-1][1], adatok[szam-1][0], file=ki)
print("A feladatsorra összesen", ossz, "pont adható.", file=ki)
ki.close()
print("7. feladat\nFájlbaírás kész.")
