# Esercizio
# Esamina il seguente codice e determina quale sarà l'output senza eseguirlo.
# Assumi che l'input dell'utente sia sempre un intero valido.
#
# Descrizione:
# Il programma chiede all'utente di inserire un numero.
# A seconda del numero inserito, il programma seguirà diverse diramazioni logiche
# e produrrà un output specifico.

# Codice da analizzare:
numero = int(input("Inserisci un numero: "))

if numero < 20:
    if numero % 2 == 0:
        if numero % 3 == 0:
            print("Il numero è divisibile per 6.")
        else:
            print("Il numero è pari ma non divisibile per 3.")
    elif numero % 3 == 0:
        print("Il numero è dispari e divisibile per 3.")
    else:
        print("Il numero è dispari e non divisibile per 6.")
elif numero < 40:
    if numero % 4 == 0:
        print("Il numero è divisibile per 4 ma minore di 40.")
    elif numero % 5 == 0:
        print("Il numero è divisibile per 5 ma minore di 40.")
    else:
        print("Il numero è maggiore o uguale a 20 ma minore di 40 e non divisibile né per 4 né per 5.")
else:
    if numero % 6 == 0:
        print("Il numero è divisibile per 6 e maggiore o uguale a 40.")
    else:
        print("Il numero è maggiore o uguale a 40 e non divisibile per 6.")

# Domande:
# 1. Cosa stampa il programma se l'input è 12?
# 2. Cosa stampa il programma se l'input è 25?
# 3. Cosa stampa il programma se l'input è 45?
