Programmare con Scratch: restituzione del massimo dopo aver inserito n numeri da tastiera.
In questa lezione vediamo come programmare un’attività che consente di individuare il numero massimo (o minimo) tra n numeri inseriti da tastiera.
Livello di difficoltà: intermedio.
Iniziamo l’attività creando una variabile personalizzata attraverso il pulsante CREA UNA VARIABILE disponibili all’interno della categoria VARIABILI. Assegniamo il nome MASSIMO alla stessa e confermiamo con un clic sul pulsante OK della finestra NUOVA VARIABILE che appare a video.
Inseriamo il blocco QUANDO SI CLICCA SU BANDIERINA per inizializzare lo script che andremo a realizzare. Dalla categoria VARIABILI trasciniamo il blocco PORTA LA MIA VARIABILE A … nell’area dello script, selezioniamo dall’elenco la variabile appena creata (“massimo”) ed assegniamo ad essa il valore zero (0).
Supponiamo ora di creare uno script che consenta di calcolare il valore massimo tra 5 numeri inseriti da tastiera. Utilizziamo il blocco RIPETI … VOLTE dalla categoria CONTROLLO ed assegniamo ad essa il numero 5. Successivamente inseriamo dalla categoria SENSORI il blocco CHIEDI … E ATTENDI e sostituiamo l’etichetta “Come ti chiami?” con, ad esempio, il testo “Inserisci 5 numeri e ti dirò qual è il più grande”.
Inseriamo ora un blocco SE … ALLORA dalla categoria CONTROLLO. In questo blocco verificheremo se il numero inserito da tastiera (il blocco RISPOSTA di colore blu) è maggiore della variabile personalizzata MASSIMO e, nel caso affermativo, aggiorniamo la variabile MASSIMO con il numero inserito.
Pertanto, inseriamo un OPERATORE DI CONFRONTO con il segno di MAGGIORE DI … ed inseriamo le variabili RISPOSTA e MASSIMO come OPERATORI.
Nella seconda riga del blocco trasciniamo dalla categoria VARIABILI il blocco PORTA LA MIA VARIABILE A … ed assegniamo alla variabile MASSIMO il valore della variabile RISPOSTA.
Lo script creato fino a questo momento permette l’inserimento di 5 numeri da tastiera e la modifica, dopo ciascun inserimento, della variabile MASSIMO con il valore della variabile RISPOSTA se quest’ultima è maggiore del valore MASSIMO.
Lo script deve concludersi con il mostrare il risultato, ovvero il numero massimo tra quelli inseriti da tastiera. Per farlo possiamo utilizzare il blocco DIRE … PER …. SECONDI appartenente alla categoria ASPETTO, inserire al suo interno un blocco di UNIONE DI … E …. appartenente alla categoria OPERATORI ed infine, inserire come primo operatore di quest’ultimo blocco l’etichetta “Il numero più grande tra quelli digitati è ” e come secondo, la variabile MASSIMO (al posto dell’etichetta “Banana”); infine, portiamo almeno a 4 i secondi di visualizzazione del blocco.
Lo script “base” è terminato. Avviamo il codice di programmazione per vedere il lavoro realizzato fino a questo momento. All’inizio ci viene chiesto dallo sprite (“il gattino”) di inserire 5 numeri… A mano a mano che digitiamo i numeri da tastiera e confermiamo, la variabile massimo visibile nella parte alta dell’area di riproduzione dello script si modifica se il valore che si inserisce è più alto di quello inserito in precedenza. La programmazione termina con il rivelare il numero massimo tra quelli digitati.
Possiamo apportare qualche altro piccolo correttivo a quanto realizzato come, ad esempio, nascondere sullo schermo il valore della variabile MASSIMO. Per farlo sarà sufficiente inserire il blocco NASCONDI LA VARIABILE … all’inizio dello script selezionando la variabile MASSIMO dall’elenco.
In questo modo il valore massimo verrà visualizzato solo alla fine, quando viene riprodotto il blocco DIRE …
Riportiamo il codice completo del lavoro svolto.