Esercizio con Python: Calcolatrice Base
Descrizione
Crea una calcolatrice base che permette all’utente di eseguire operazioni matematiche come somma, sottrazione, moltiplicazione e divisione. L’utente inserisce due numeri e sceglie un’operazione.
Obiettivo
- Applicare la gestione dell’input utente.
- Usare funzioni Python per organizzare il codice.
- Gestire errori come divisione per zero o input non validi.
Codice
def calcolatrice():
print("Benvenuto nella calcolatrice!")
print("Scegli un'operazione:")
print("1. Somma")
print("2. Sottrazione")
print("3. Moltiplicazione")
print("4. Divisione")
while True:
try:
operazione = int(input("Inserisci il numero dell'operazione (1-4): "))
if operazione not in [1, 2, 3, 4]:
print("Scelta non valida. Riprova.")
continue
numero1 = float(input("Inserisci il primo numero: "))
numero2 = float(input("Inserisci il secondo numero: "))
if operazione == 1:
print(f"Risultato: {numero1} + {numero2} = {numero1 + numero2}")
elif operazione == 2:
print(f"Risultato: {numero1} - {numero2} = {numero1 - numero2}")
elif operazione == 3:
print(f"Risultato: {numero1} * {numero2} = {numero1 * numero2}")
elif operazione == 4:
if numero2 == 0:
print("Errore: Divisione per zero non permessa.")
else:
print(f"Risultato: {numero1} / {numero2} = {numero1 / numero2}")
# Chiedi se l'utente vuole continuare
continua = input("Vuoi fare un altro calcolo? (s/n): ").lower()
if continua != 's':
print("Grazie per aver usato la calcolatrice!")
break
except ValueError:
print("Errore: Per favore inserisci valori validi.")
calcolatrice()
Spiegazione
- Scelta dell’operazione:
- L’utente sceglie l’operazione tra somma, sottrazione, moltiplicazione e divisione.
- Input numerico:
- Vengono richiesti due numeri per eseguire l’operazione.
- Gestione degli errori:
- L’input è verificato per assicurarsi che sia valido.
- La divisione per zero è gestita con un messaggio di errore.
- Loop:
- Dopo ogni calcolo, l’utente può scegliere se continuare o terminare.
Esercizio Extra
- Aggiungi altre operazioni come potenza o radice quadrata.
- Implementa un sistema che salva una cronologia dei calcoli.