print("1. feladat")
bemenet = open("konyv.txt")
for sor in bemenet:
    print(sor[:-1])
bemenet.close()

print("2. feladat")
ismétlés = int(input("Kérem adja meg az ismétlések számát: "))
bemenet = open("konyv.txt")
maxhossz=0
for sor in bemenet:
    if (len(sor[:-1])) > maxhossz:
        maxhossz=len(sor[:-1])
bemenet.close()
bemenet = open("konyv.txt")
for sor in bemenet:
    kitöltés=""
    for i in range(0, ismétlés):
        sorhossz=len(sor[:-1])
        print(sor[:-1], end="")
        kitöltés = int(maxhossz-sorhossz)*" "
        print(kitöltés, end="")
        print(" | ", end="")
    print()
bemenet.close()

#3. feladat
def atalakit(tömörített):
    hossz = len(tömörített)
    szöveg = ""
    for i in range(0, hossz, 2):
        szöveg += int(tömörített[i])*(tömörített[i+1])
    return szöveg

print("4. feladat")
fájlnév_tömörített = "szg_t.txt"
fájlnév_ = "szg.txt"
bemenet = open(fájlnév_tömörített)
kimenet = open(fájlnév_, "w")
for sor in bemenet:
    print(atalakit(sor[:-1]), file=kimenet)
    print(atalakit(sor[:-1]))
bemenet.close()
kimenet.close()

print("5. feladat")
fájlnév_tömörített = input("Kérem adja meg a tömörített ábra fájlnevét: ")
fájlnév_ = input("Kérem adja meg a tömörítetlen ábra fájlnevét: ")
tömörítetlen_hossz = 0
bemenet = open(fájlnév_)
for sor in bemenet:
    tömörítetlen_hossz += len(sor)-1
bemenet.close()
tömörített_hossz = 0
bemenet = open(fájlnév_tömörített)
for sor in bemenet:
    tömörített_hossz += len(sor)-1
bemenet.close()
print(f"A karakterek száma a tömörített állományban: {tömörített_hossz}")
print(f"A karakterek száma a tömörítetlen állományban: {tömörítetlen_hossz}")
print(f"A tömörítési arány: {tömörített_hossz/tömörítetlen_hossz:.2f}")

print("6. feladat")
fájlnév = "konyv_t.txt"
bemenet = open(fájlnév)
magasság = 0
blokk = 0
szélesség = 0
for sor in bemenet:
    magasság += 1
    aktuális_szélesség = 0
    for i in range(0, len(sor)-1, 2):
        blokk += 1
        aktuális_szélesség += int(sor[i])
    szélesség = max(szélesség, aktuális_szélesség)
bemenet.close()
print(f"Az ábra magassága sorokban: {magasság}")
print(f"Az ábra szélessége karakterekben: {szélesség}")
print(f"A blokkok száma: {blokk}")
