Realizziamo il gioco indovina numero con scratch.
Lo scopo del gioco è semplicemente quello di chiedere un numero ad un utente e di confrontarlo con il numero ‘pensato‘ dal programma.
Se l’utente immette il numero giusto, allora ha vinto.
Se invece inserisce un numero più alto riceverà il messaggio che gli suggerisce di provare con un numero più basso.
Infine se inserisce un numero più basso riceverà il messaggio che gli suggerisce di provare con un numero più alto.
Stabiliamo un numero massimo di tentativi a piacere.
Se dopo tali tentativi l’utente non ha vinto, si vedrà il messaggio: “Purtroppo hai perso.”
Procedimento del gioco indovina numero con scratch
Analizziamo il procedimento in dettaglio.
Per questo gioco ho utilizzato lo sfondo gingerbread e come sprite ho inserito il pinguino 3.
Facciamo generare al programma un numero a caso tra 1 e 10.
Per generare il numero a caso utilizzo la funzione di Scratch numero a caso tra 1 e 10.
Creo una variabile che chiamo indovina e memorizzo in essa il numero random generato dal programma.
Poniamo a tre il numero massimo di tentativi, quindi inserisco ripeti 3 volte. All’interno del ciclo chiedo all’utente di inserire il primo numero e lo memorizzo in una variabile appositamente creata che chiamo numero.
Se il numero è maggiore di indovina allora dò il messaggio: il numero che ho pensato è più piccolo.
Altrimenti se il numero è minore di indovina dò come messaggio: il numero che ho pensato è più grande.
Infine se il numero è uguale a indovina dò come messaggio: hai indovinato!
Ho messo in aggiunta il balletto del pinguino 🙂
Per farlo ho creato un ciclo di ripeti 10 volte e ho inserito un semplice cambio costume.
Se dopo i tre tentativi il numero non è stato indovinato allora si avrà in output il messaggio: Hai perso! Mi dispiace!
Possiamo perfezionare lo script aggiungendo un controllo sul numero preso in input.
L’utente non dovrebbe inserire un numero maggiore di 10 o inferiore a 1, perché il numero da indovinare è tra 1 e 10. Per controllare ciò possiamo utilizzare gli operatori logici; in questo caso mi servono le funzioni logiche not e o.
Così, se inseriamo un numero maggiore di 10 oppure inferiore a 1 il programma richiede nuovamente l’inserimento.
Attenzione! In Scratch a differenza dei linguaggi di programmazione il ciclo si ripete finché quella condizione risulta essere falsa quindi occorre inserire la negazione usando l’operatore non.
Alcuni link utili:
Equazioni di primo grado in scratch
Disegnare poligoni regolari in scratch
La successione di Fibonacci in Scratch
Massimo fra tre numeri in Scratch
Minimo tra 3 numeri in Scratch
Bella rubrica
Grazie!!!