# Lezione 10 - Esercizio 5
# Creare una LISTA DI LISTE, dove ogni lista interna contiene tre elementi.
# Chiedere all'utente di inserire due indici: uno per la lista interna
# e uno per l'elemento dentro quella lista.
# Stampare l'elemento interno corrispondente.

lista_di_liste = [
    [20, 30, 12],
    [34, 150, 777],
    [1, 2, 3],
    [6, 3, 90]
]

print("Buonasera, in questo programma scoprirai quale elemento si nasconde in corrispondenza di un doppio indice, in una lista di liste.")

indice_esterno = len(lista_di_liste) * 100
while not -len(lista_di_liste) <= indice_esterno < len(lista_di_liste):
    indice_esterno = int(input(f"Inserisci l'indice più esterno, quello relativo alla lista di liste (0-{len(lista_di_liste) - 1}): "))

indice_interno = len(lista_di_liste[indice_esterno]) * 100
while not -len(lista_di_liste[indice_esterno]) <= indice_interno < len(lista_di_liste[indice_esterno]):
    indice_interno = int(input(f"Bene, ora inserisci l'indice più interno, quello relativo alla lista interna che hai scelto (0-2): "))

print(f"L'elemento che hai scelto è {lista_di_liste[indice_esterno][indice_interno]}")