back to top

Variabili in Scratch

Come in tutti i linguaggi di programmazione anche in Scratch un ruolo di primo piano è ricoperto dal concetto di variabile.

Le variabili, in programmazione, sono delle porzioni di memoria che vengono "riempite" con dei dati volatili, cioè che possono cambiare durante l’esecuzione del programma.

Una variabile può contenere dei dati sotto forma di numero, di stringa, vettore, ecc.

In quasi tutti i linguaggi di programmazione le variabili si definiscono mediante l’operatore di eguaglianza, in questo modo:

mioNome = "Massimiliano"

Nell’esempio qui sopra "mioNome" è l’identificativo univoco della variabile, "Massimiliano" è il suo valore (cioè i dati – sotto forma di stringa – in essa memorizzati).

Creare variabili in Scratch

Anche Scratch, ovviamente, consente di creare variabili. Per farlo si utilizzano i Blocchi e si seleziona l’apposita categoria "Variabili". Si clicca sul pulsante "Crea una variabile".

Creo una variabile in Scratch

Così facendo si aprirà una finestra in cui ci verrà chiesto:

  • di assegnare un nome alla variabile;
  • di definire il suo ambito di validità o scope (questo Sprite o tutti gli Sprite).

Ai nostri fini creiamo una variabile col nome "MyVar" e selezioniamo "Per tutti gli Sprite".

Blocchi variabile in Scratch

Come potete vedere, nella colonna di sinistra, sono comparse nuove mattonelle arancio del tipo "Porta MyVar a …", "Cambia MyVar di …", ecc.

Proviamo ora ad implementare le variabili nel nostro progetto. In questo modo:

Esempio di utilizzo delle variabili in Scratch

Ancora una volta vediamo, passo passo, cosa è stato fatto:

  • Il primo blocco (giallo) appartiene alla categoria "Situazioni" e crea uno specifico evento (il click sulla bandiera verde).
  • Il secondo blocco (arancio) appartiene alla categoria "variabili" ed assegna a "MyVar" il valore "Ciao".
  • Il terzo blocco (viola) appartiene alla categoria "Aspetto" e fa dire al gatto il valore attuale della variabile "MyVar" (si noti che la variabile è stata trscinata dentro al blocco "dire").

Fino a qui potrebbe sembrare poca cosa ma le variabili sprigionano tutta la loro potenzialità quando si inserisce nel progetto l’elemento dell’interazione con l’utente…

Esempio di utilizzo delle Variabili in combinazione ai Sensori

Ancora una volta creiamo un nuovo progetto Scratch. Selezioniamo il solito Sprite del gatto e creiamo un paio di variabili: la prima la chiameremo "nome" e la seconda "anni".

Ora creiamo questa programmazione:

Esempio più articolato di utilizzo delle variabili in Scratch

Come al solito spieghiamo cosa è stato fatto:

  • Il primo blocco (giallo) appartiene alla categoria "Situazioni" e crea uno specifico evento (il click sulla bandiera verde).
  • Il secondo blocco (azzurro) appartiene alla categoria "Sensori" e crea un’interazione con l’utente: il gatto farà una domanda a cui l’utente dovrà digitare una risposta.
  • Il terzo blocco (arancio) appartiene alla categoria "Variabili" e assegna a "nome" il valore digitato dall’utente in risposta alla precedente domanda.
  • Il quarto blocco (azzurro) appartiene nuovamente alla categoria "Sensori" e crea una seconda domanda.
  • Il quinto blocco (arancio) appartiene nuovamente alla categoria "Variabili" e assegna a "anni" il valore digitato dall’utente in risposta alla precedente domanda.
  • Il sesto blocco (viola) appartiene alla categoria "Aspetto" e fa dire qualcosa al gatto… ciò che dice il gatto è il frutto di una concatenazione di stringhe (effettuata mediante l’apposito operatore) in cui sono comprese le due variabili.
  • L’ultimo blocco (ocra) appartiene alla categoria "Controlli" e determina la chiusura del programma.

Per osservare l’effetto del nostro programma si clicchi sulla bandierina verde.

Nel nostro esempio abbiamo avuto modo di testare più a fondo il funzionamento delle variabili quali "archivi" di dati (nel nostro esempio il nome e l’età dell’utente) da poter utilizzare all’interno del programma.

Abbiamo altresì avuto modo di provare il funzionamento dei Blocchi Sensore e dei Blocchi Operatore che abbiamo presentato nella lezione precedente della nostra guida.

Pubblicitร 
Massimiliano Bossi
Massimiliano Bossi
Stregato dalla rete sin dai tempi delle BBS e dei modem a 2.400 baud, ho avuto la fortuna di poter trasformare la mia passione in un lavoro (nonostante una Laurea in Giurisprudenza). Adoro scrivere codice e mi occupo quotidianamente di comunicazione, design e nuovi media digitali. Orgogliosamente "nerd" sono il fondatore di MRW.it (per il quale ho scritto centinaia di articoli) e di una nota Web-Agency (dove seguo in prima persona progetti digitali per numerosi clienti sia in Italia che all'estero).