# Fordító program
# YT: https://www.youtube.com/watch?v=-_qzxi4bI5Q
# Kategória: szótárak
import random
szotar = {}
def uj_szo():
magyar = input("Magyar szó: ")
angol = input("Angol szó: ")
szotar[magyar] = angol
def magyar_angol():
szo = input("Magyar szó: ")
if szo in szotar:
print(f"Angol jelentése: {szotar[szo]}")
else:
print("Nincs ilyen szó a szótárban!")
def angol_magyar():
szo = input("Angol szó: ")
for magyar, angol in szotar.items():
if angol == szo:
print(f"Magyar jelentése: {magyar}")
return
print("Nincs ilyen szó a szótárban!")
def gyakorlas():
if len(szotar) == 0:
print("A szótár üres!")
return
while True:
# Véletlenszerűen választunk magyar->angol vagy angol->magyar
if random.choice([True, False]):
# Magyar -> Angol
magyar = random.choice(list(szotar.keys()))
valasz = input(f"\nFordítsd le: {magyar}\nAngol jelentése: ")
if valasz == szotar[magyar]:
print("Helyes!")
else:
print(f"Helytelen! A helyes válasz: {szotar[magyar]}")
else:
# Angol -> Magyar
magyar = random.choice(list(szotar.keys()))
angol = szotar[magyar]
valasz = input(f"\nFordítsd le: {angol}\nMagyar jelentése: ")
if valasz == magyar:
print("Helyes!")
else:
print(f"Helytelen! A helyes válasz: {magyar}")
if input("\nFolytatod? (i/n): ") != "i":
break
while True:
print("\n1. Új szó")
print("2. Magyar -> Angol")
print("3. Angol -> Magyar")
print("4. Gyakorlás")
print("5. Kilépés")
valasztas = input("\nVálasztás: ")
match valasztas:
case "1":
uj_szo() # Új szó hozzáadása
case "2":
magyar_angol() # Magyar -> Angol fordítás
case "3":
angol_magyar() # Angol -> Magyar fordítás
case "4":
gyakorlas() # Gyakorlás funkció
case "5":
break # Kilépés a ciklusból
case _:
print("Érvénytelen választás.") # Alapértelmezett eset, ha nincs egyezés