Incominciamo questa lezione fornendo la soluzione all’esercizio della lezione precedente.
Le specifiche date per la realizzazione del programma erano le seguenti:
Realizzare un programma che alla pressione del pulsante “A” visualizza una risposta casuale tra N (con N che decidete voi) disponibili.
All’inizio del gioco e alla fine di ogni risposta, dopo 1 secondo, deve comparire un punto interrogativo che evidenzia lo stato: “poni una domanda”.
L’idea è quella di simulare quanto può essere fatto dal noto libro gioco di Carol Bolt: Piccolo libro delle risposte che ho usato tantissimo con i miei figli quando erano bambini.
Per questioni di rapidità ho utilizzato solo 10 risposte, queste quelle che ho scelto:
Sì, Probabile, Certo, Bene, Forse, Chiedi ancora, Improbabile, No, Sii audace, Assolutamente.
Per far si che all’avvio del programma compaia subito un punto interrogativo, è stato inserito all’interno dell’istruzione “on start” l’istruzione “show string ?”, questa istruzione verrà eseguita subito all’accensione del micro:bit.
Non appena verrà premuto il pulsante “A” viene ripetuta la visualizzazione del punto interrogativo seguita da una cancellazione immediate dello schermo, queste due istruzioni hanno l’obiettivo di non visualizzare ad ogni generazione di risposta un punto interrogativo che scorre da sinistra verso destra prima della prima lettera.
All’interno della variabile “risposta” verrà memorizzato uno dei 10 valori (da 0 a 9) in questo modo solo una delle condizioni logiche presenti nelle 10 istruzioni “IF THEN” che seguono risulterà vera.
Partiamo con la Lezione 6
Introduzione
In questa lezione vedremo come utilizzare il micro:bit come un dado, scuotendo la scheda visualizzeremo una delle sei facce di un dado.
Lo scopo della lezione è quello di imparare ad utilizzare la funzione “if then” e la proprietà shake (scuotere) della nostra scheda.
Di cosa avete bisogno
- n.1 BBC micro:bit
- n.1 Micro USB
- n.1 Computer o tablet
- n.2 x Batterie AAA ed un contenitore per le batterie (opzionale perché la scheda potrà essere alimentata direttamente anche via USB)
Programmiamo
Come per le lezioni precedenti utilizzeremo la funzione “pick random 0 to 5” per generare un numero casuale che memorizzeremo in una variabile che chiameremo “numero” ad ogni generazione di numero casuale verifichiamo SE (IF) il numero generato è uguale ad un numero da 0 a 5 ALLORA (THEN) accendi il “numero” di LED mediante la funzione “show leds”.
1. Dalla sezione “Input” selezioniamo la funzione “on shake”
Come potete notare il menù a discesa (click sulla freccia giù di fianco a “shake”) è possibile rilevare diverse azioni fisiche sulla nostra scheda: scuotere, spostare da sinistra a destra e viceversa, accelerare con un certo grado di accelerazione, ecc… nelle lezioni successive vedremo come utilizzare queste funzioni.
2. Come avete già imparato a fare, create dalla sezione “Variables” una nuova variabile che chiameremo “numero”
3. Trascinate nell’area di programmazione la funzione “set item to 0” ed cambiate la variabile in numero:
4. Inserire al posto dello “0” l’istruzione per la generazione di un numero casuale
5. Impostare il limite superiore del numero generato a 5, in questo modo potrete generare 6 numeri casuali da 0 a 5
6. A questo punto sarà sufficiente realizzare 6 gruppi costituiti da 6 istruzioni “if then” in cui la condizione sarà vera se il numero casuale generato è uguale ad un numero da 0 a 5, nel caso in cui la condizione venga verificata dovranno essere accesi i led corrispondenti
Notate che nel momento in cui inserite l’istruzione “on shake” la scheda virtuale potrà essere scossa con il mouse, inoltre apparirà un pulsante “SHAKE” sulla scheda virtuale, il click sul pulsante equivarrà allo scuotimento della scheda
Esercizio 1
sasso, carta, forbice
Utilizzando quanto spiegato durante questa lezione, realizzare il gioco: “sasso, carta, forbice” che allo scuotimento del micr:bit fa comparire casualmente un’immagine che rappresenta uno dei tre oggetti.
Esercizio 2
Realizzare un programma che permetta di visualizzare un numero casuale pari se viene premuto il pulsante “A” e un numero casuale dispari se viene premuto il pulsante “B”.
Per semplicità si prenda solamente l’insieme dei numeri tra 0 e 9.