In questa lezione realizzemo un gioco con gli indovinelli con Scratch. Proporremo 4 semplici indovinelli: 1) Giro curioso nel bosco fitto e frondoso. Mi arrotolo in palla, sono piccolo e gioioso. 2) Mi nutro di insetti nell’oscurità, Un piccolo mammifero nella mia verità. 3) Nella notte mi senti cantare, Con occhi grandi posso guardare. 4) Faccio il sonnellino durante la lunga stagione. Amo miele e pesce, sono un buon pescatore!
Per individuare la risposta corretta, occorre trascinare ciascun animale sulla macchina. Se la macchina parte con l’animale vuol dire che la risposta è corretta, altrimenti la macchina cambia colore e l’animale ritorna in posizione.
Ecco una possibile implementazione del gioco indovinelli con Scratch:
In questo articolo impareremo a fare coding con Scratch in maniera semplice, senza utilizzare le strutture condizionali (se, se allora) o iterative (ripeti, ripeti fino a quando).
Esempio di coding con Scratch
Dato il perimetro di un triangolo equilatero calcolare l’area.
Bene, il problema è di facile risoluzione e presenta varie soluzioni.
La prima, più ovvia, prevede l’uso della formula:
area=sqrt(3)/36*(perimetro)2 dove con sqrt indichiamo la radice quadrata.
Il risultato di questa operazione con, ad esempio, il perimetro uguale a 24 cm è 27,71 cm2.
Ma ci sono anche altri procedimenti, bensì più lunghi, per trovare l’area.
Infatti, un triangolo equilatero ha tutti e tre i lati uguali, quindi diventa facile calcolare il lato. Basta fare questa operazione per ottenere la misura del lato: (24/3) cm=8 cm
Bene allora potremmo utilizzare questa formula:
area=sqrt(3)/4*(lato)2
Ho ancora un’altra possibilità che è quella di ricavarmi l’altezza e seguire questa formula area=(altezza)2/sqrt(3) ma ovviamente in questo caso è la soluzione meno logica da adottare.
Tutto ciò per mostrarvi che dato un problema esistono parecchie soluzioni, da quella più ottimale a quella meno, con più o meno passaggi.
Algoritmo che risolve l’area di un triangolo equilatero avendo il perimetro
Questo semplice problema si può risolvere anche creando del coding con Scratch, cioè utilizzando la programmazione a blocchi, molto semplice da implementare rispetto ai linguaggi di programmazione.
Utilizzo la prima soluzione che è la più ovvia.
Innanzitutto scelgo uno sfondo e uno sprite qualunque.
Dopo creo le variabili, in questo caso me ne servono solo due: area e perimetro.
Poi realizziamo il nostro codice a blocchi.
Chiediamo innanzitutto il perimetro e lo memorizziamo in una variabile.
Dopo memorizziamo nella variabile area il risultato della seguente formula: sqrt(3)/36*(perimetro)2
Ma il risultato sarà un numero con la virgola, quindi occorre arrotondarlo. Per arrotondare a due cifre decimali moltiplico l’area per 100 e con la funzione arrotonda tolgo le altre cifre. Dopo divido il risultato per 100.
Ecco un esempio di coding con Scratch con la risoluzione del problema proposto.
Chiaramente si potrebbero aggiungere i controlli dell’input.
Questo è solo un possibile esempio di coding con Scratch. Ne farò tantissimi altri andando avanti nei tutorial.
In questo articolo parleremo di come trovare i divisori di un numero con Scratch.
Chiediamo quindi un numero in input e il programma trova i divisori in automatico.
Ad esempio se prendiamo in input il numero 6 i divisori sono 6, 3, 2, 1.
Quindi realizziamo con Scratch questo semplice programma.
Procedimento per il calcolo dei divisori di un numero con Scratch
Partiamo da alcune considerazioni.
Ogni numero è divisibile per se stesso e per 1, quindi facciamo senza a controllare se il resto della divisione è zero.
Inoltre possiamo restringere il campo delle divisioni ad n/2 in quanto ciascun numero diviso un numero maggiore della sua metà dà sempre resto diverso da zero.
Quindi potremmo dividere da 2 fino ad n/2. Nel caso in cui il numero sia dispari arrotondiamo il valore con la funzione arrotonda di Scratch.
Ecco quindi lo sfondo e lo sprite che ho scelto.
Creiamo poi le variabili numero e divisore:
Ecco il codice a blocchi completo per il calcolo dei divisori di un numero con Scratch.
Ho comunque diviso il numero per uno ma come spiegato prima potevo anche farne a meno.
Potevamo procedere anche iniziando a dividere da numero/2 fino ad 1, cioè al contrario.
Chiaramente questa è una possibile soluzione per trovare i divisori di un numero con Scratch, dunque proponete pure la vostra nei commenti sotto.
Affronteremo oggi i multipli di un numero con Scratch.
I multipli di un numero sono tutti quei numeri che si ottengono moltiplicando quel numero per altri numeri interi.
Facciamo un esempio:
6 è multiplo di 3 e anche di 2, infatti 6 è dato dal prodotto di 3 *2.
Primo esempio – multipli di un numero con Scratch
Prendiamo in input un numero e controlliamo se è multiplo di tre.
Innanzitutto scegliamo uno sfondo e uno sprite qualunque:
Dopo creiamo la variabile numero:
Quindi basterà controllare che il resto della divisone di numero per 3 sia diverso da zero.
Se la condizione è vera allora visualizziamo in output che il numero è multiplo di 3, altrimenti visualizziamo che non lo è.
Allego lo script completo per i multipli di un numero con Scratch.
Avremmo anche potuto utilizzare una costante dove poter memorizzare il valore tre in modo da poterlo cambiare facilmente e utilizzare tale valore più volte all’interno del nostro codice a blocchi.
Secondo esempio – multipli di un numero con Scratch
Facciamo un altro esempio generalizzando il problema, cioè chiediamo in input sia il numero che il multiplo.
In questo caso ci serviranno due variabili:
Poi controlliamo semplicemente che, dividendo il numero per il multiplo presi in input, il resto sia uguale a zero, in modo da poter visualizzare in output di conseguenza il messaggio opportuno.
Quindi ecco i blocchi necessari per risolvere i multipli di un numero con Scratch.
Analogamente si può ragionare per i sottomultipli.
Chiaramente questi sono solo degli esempi sui multipli di un numero con Scratch.
Commenti recenti