cat python/laboratorio-indovina-il-numero.md

Lezione 24 30 min

Laboratorio: indovina il numero

Costruire un gioco testuale con random, while e condizioni.

Prima idea

Il gioco Indovina il numero unisce molte idee: numero segreto, input, conversione, condizioni, ciclo e tentativi. E piccolo, ma contiene logica vera.

Questa lezione fa parte del modulo Ripetere senza copiare. L’obiettivo del modulo è: Usare cicli per ripetere azioni, contare, accumulare risultati e costruire un primo gioco testuale.

Parole nuove

  • random: modulo che genera valori casuali.
  • tentativo: una prova fatta dal giocatore.

Cosa impari

  • Generare un numero casuale.
  • Limitare il numero di tentativi.
  • Dare indizi troppo alto o troppo basso.

Esempio da copiare

import random

segreto = random.randint(1, 10)
tentativi = 3

while tentativi > 0:
    risposta = int(input("Numero da 1 a 10: "))
    if risposta == segreto:
        print("Hai vinto!")
        break
    elif risposta < segreto:
        print("Troppo basso")
    else:
        print("Troppo alto")
    tentativi = tentativi - 1

Prima copialo senza modificarlo. Poi cambia una cosa sola e riesegui: una parola, un numero, un messaggio o un valore.

Prova guidata

  1. Copia il gioco base.
  2. Aggiungi un messaggio quando finiscono i tentativi.
  3. Cambia l’intervallo da 1-10 a 1-20.
  4. Fai provare il gioco a un compagno.

Sfida piccola

Prendi l’esempio e rendilo tuo senza aggiungere complessità inutile. Se qualcosa si rompe, torna all’ultima versione funzionante e cambia una riga per volta.

Controllo finale

Hai finito quando il gioco può finire sia con vittoria sia senza tentativi.