Ecco un altro esercizio in python per allenare le nostre abilità. Vogliamo scrivere un programma che rispetti le seguenti caratteristiche:
Scrivere un programma che chieda all’utente di scegliere tra due attività:
La prima attività deve prevedere che l’utente indovini un numero intero scelto a caso dal computer in un intervallo tra 1 e 10. L’utente può sbagliare al massimo 5 volte, poi il programma deve terminare con l’avviso che l’utente ha sbagliato troppe volte.
La seconda attività deve prevedere che l’utente riempia una lista di ingredienti per un dolce. La lista termina quando l’utente scrive la parola “fine”. Cioè, il programma chiede continuamente all’utente di scrivere il nome di un ingrediente e appena viene scritta la parola “fine” il programma capisce che la lista degli ingredienti e’ finita e stampa il contenuto di tutto l’elenco degli ingredienti inserito.
Ecco un programma che chiede all’utente di scegliere tra due attività e di eseguire l’attività selezionata:
import random
# Stampa il menu delle attività
print("Scegli una attività:")
print("1. Indovina un numero")
print("2. Inserisci ingredienti per una torta")
choice = input("Inserisci il numero dell'attivita che vuoi svolgere: ")
# Esegui l'attività scelta
if choice == "1":
# Genera un numero randon tra 1-10
target = random.randint(1, 10)
# Inizializza il numero di errori a zero
mistakes = 0
# Continua a chiedere all'utente di indovinare il numero, per cinque tentativi
while mistakes < 5:
# Chiedi all'utente di inserire la sua scelta
guess = int(input("Inserisci il numero da indovinare: "))
# Controlla se il numero inserito è corretto
if guess == target:
print("Congratulazioni, hai indovinato il numero!")
break
else:
print("Mi dispiace, il numero non è corretto.")
mistakes += 1
# Stampa un messaggio d'errore se sta commettendo troppi errori
if mistakes == 5:
print("Hai commesso troppi errori. Il numero corretto era: ", target)
elif choice == "2":
# Inizializza la lista degli ingredienti
ingredients = []
# Continua a chiedere gli ingredienti all'utente
while True:
# Chiedi di inserire un ingredientet
ingredient = input("Inserisci un ingrediente (oppure 'fine' per terminare): ")
# Controlla se l'utente vuole terminare
if ingredient.lower() == "fine":
break
else:
# Aggiungi l'ingrediente alla lista
ingredients.append(ingredient)
# Stampa la lista di ingredienti
print("Ingredienti:", ingredients)
else:
print("Scelta invalida. Prova di nuovo.")
Questo programma chiede all’utente di scegliere tra due attività: indovinare un numero o inserire gli ingredienti per una torta. Se l’utente sceglie la prima attività, il programma genera un numero casuale nell’intervallo 1-10 e chiede all’utente di indovinarlo. L’utente ha a disposizione un massimo di 5 errori prima che il programma termini con un avvertimento. Se l’utente sceglie la seconda attività, il programma chiede all’utente di inserire gli ingredienti per una torta e di aggiungerli a un elenco. Il programma continuerà a chiedere gli ingredienti finché l’utente non inserirà la parola “fine”, a quel punto stamperà l’intero elenco degli ingredienti.