LEZIONI E FORMAZIONE DAI DOCENTI PER I DOCENTI

Scopri WeTurtle, la community di educatori dove trovare e condividere risorse innovative

home - progetti - Calcolare le potenze con Scratch!

Calcolare le potenze con Scratch!

In questa lezione troverai uno spunto da realizzare con i tuoi studenti utilizzando Scratch 3.0 ed un po' di Matematica. Se fai connettere i tuoi studenti al sito di Scratch 3.0 scegliendo la categoria Operatori noterai che non è presente un blocco che ti permette di calcolare la potenza...

Lorenzo Cesaretti   by Lorenzo Cesaretti
Coding
CATEGORIA
Coding
Scratch

Introduzione

In questa lezione troverai uno spunto da realizzare con i tuoi studenti utilizzando Scratch 3.0 ed un po' di Matematica.

Se fai connettere i tuoi studenti al sito di Scratch 3.0 scegliendo la categoria Operatori noterai che non è presente un blocco che ti permette di calcolare la potenza di un qualsiasi numero inserito dall’utente. L’ultimo blocco della categoria Operatori (che consente di calcolare il valore di varie funzioni matematiche, dopo aver inserito un input) tra le varie possibilità permette di calcolare l’elevamento a potenza del numero di Eulero (la funzione esponenziale), o l’elevamento a potenza con base 10. Purtroppo non esiste una funzione generica che dati due input (la base e l’esponente) calcoli in automatico la potenza. Quindi perché non costruirsi un algoritmo o una funzione che lo faccia in automatico?

Questo progetto può essere realizzato in circa 2 ore di lavoro.
Nel caso si volesse approfondire la costruzione del diagramma di flusso (che sta alla base del progetto) si potrebbe strutturare il percorso in 4 ore, suddivise in 2 lezioni.
Questo progetto potrebbe essere rivolto a studenti di scuola secondaria di I grado (classe terza), come consolidamento del concetto di elevamento a potenza, o come ripasso per la scuola secondaria di II grado
 
Pre-requisiti

  • Conoscenza base di Scratch.
  • Conoscenza dei concetti base di programmazione (esecuzione sequenziale, ciclica, condizionata di istruzioni).
  • Conoscenza del concetto di variabile.

Vuoi leggere la lezione quando vuoi, anche offline?

Obiettivi e Competenze Obiettivi e Competenze

  • Comprendere il significato di elevamento a potenza
  • Costruire ed utilizzare un diagramma di flusso   

Strumenti Strumenti

  • Computer
  • Connessione Internet
  • Scratch 3.0 (versione online)

Metodologia didattica Metodologia didattica

Ancora non sei iscritto? Diventa una tartaruga digitale con centinaia di docenti da tutta Italia.

ISCRIVITI SUBITO!

Linee guida delle attività Linee guida delle attività

Ecco una possibile struttura per svolgere un’attività di questo tipo:

  • Presentazione del problema: 10 minuti
  • Costruzione del diagramma di flusso: 30 minuti
  • Condivisione del lavoro svolto e confronto: 15 minuti
  • Costruzione dell'algoritmo in Scratch: 50 minuti
  • Condivisione del lavoro svolto e confronto: 15 minuti

Fase 1 (10 minuti)

Presenta il problema ai tuoi studenti: i programmatori di Scratch si sono dimenticati di inserire un blocco per poter calcolare l’elevamento a potenza di un qualsiasi numero!
All’interno di Scratch abbiamo a disposizione il blocco "funzione" che permette di calcolare la potenza del numero di Eulero o di 10 (figura 1), e il blocco moltiplicazione (al cui interno posso annidare altri blocchi moltiplicazione così da ottenere il calcolo di una potenza, come in figura 2), ma utilizzando solo questo blocco non avremo un algoritmo generale per il calcolo della potenza di un numero.

Il lavoro del programmatore invece è proprio quello di progettare algoritmi e funzioni che siano più generali possibili, così da poter essere utilizzati in più contesti differenti: in questo caso l’algoritmo dovrà funzionare per qualsiasi coppia di numeri inseriti dall’utente!

Fase 2 (30 minuti)

Dopo aver lanciato la sfida, gli studenti potrebbero iniziare a progettare differenti soluzioni con carta e penna. La domanda che si potrebbe fare agli studenti è la seguente:

Come posso spiegare ad un computer tutte le operazioni necessarie a calcolare una potenza?

Per arrivare ad una bozza di algoritmo gli studenti potrebbero riflettere sui passaggi necessari al calcolo delle potenze, utilizzando esempi reali. In Matematica la definizione di potenza è la seguente:

dove n si definisce base, m esponente.
Ad esempio, se dovessi spiegare ad un computer come calcolare 3 elevato alla 4, potrei effettuare i seguenti passaggi:

In sostanza dopo aver inizializzato la variabile “prodotto parziale” = 1 (il valore di qualsiasi numero, eccetto 0, elevato a 0), effettuo la moltiplicazione tra il prodotto parziale e la base della potenza (nell’esempio 3) un numero di volte pari all’esponente; ogni volta il prodotto parziale diventa il risultato della moltiplicazione! Questa procedura funziona solo se l’esponente è un numero intero.
Il diagramma di flusso potrebbe essere uno strumento molto utile per rappresentare quanto proposto finora. Nell’immagine sotto proponiamo una bozza semplificata di un possibile diagramma su cui riflettere con gli alunni.

Fase 3 (15-20 minuti)

Dopo aver ragionato, costruito, disegnato nella fase precedente, invita gli studenti a condividere tutte le idee che hanno avuto su come risolvere il problema. In questo modo gli alunni si potranno confrontare, scambiare feedback e spunti di miglioramento.

Fase 4 (50 minuti)

Proviamo a costruire in Scratch 3.0 la sequenza necessaria ad implementare l’algoritmo esposto in precedenza. Iniziamo dalla progettazione grafica: inserisci un personaggio ed uno sfondo a piacere.

Dobbiamo poi iniziare a lavorare alla logica: è fondamentale chiedere all’utente quali sono la base e l’esponente della potenza da calcolare, quindi avremo bisogno di 2 variabili all’interno delle quali salvare i valori inseriti.
Per creare una variabile in Scratch clicca su Variabili (colonna a sinistra), poi scegli “Crea una variabile” e assegnale un nome.

Nel nostro script abbiamo creato due variabili, denominate base ed esponente.
Nella sequenza qui sotto trovi la prima parte del lavoro svolto:

  • Dopo aver salutato l’utente vengono spiegate le funzionalità del programma (usando il blocco “dire … per … secondi” della categoria Aspetto)
  • Con il blocco “chiedi … e attendi” (categoria Sensori) si invita l’utente ad inserire la base e l’esponente, andando poi a salvare questi valori dentro le 2 rispettive variabili (il blocco “porta variabile a …” si trova nella categoria Variabili, “risposta” nella categoria Sensori!)

A questo punto possiamo lavorare alla parte matematica dell’algoritmo! La sequenza da costruire potrebbe essere fatta più o meno in questo modo:

Ed andrebbe collegata allo script costruito in precedenza!

Ricorda che:

  • Il blocco “ripeti … volte” si trova nella categoria Controllo
  • Il blocco moltiplicazione si trova nella categoria Operatori
Funziona? Mmmmh ancora non ci siamo. Se provi ad inserire dei numeri negativi l’algoritmo non risponde correttamente.
Infatti, nel diagramma di flusso avevamo utilizzato la condizione:

se esponente >= 0
            CALCOLO 1
altrimenti
            CALCOLO 2

In Scratch 3.0 possiamo costruire l’esecuzione condizionale di istruzioni con il blocco "se … allora … altrimenti" (categoria Controllo).

Che sequenza devo costruire dentro l’ “altrimenti”?
Divertiti con i tuoi studenti a completare questo progetto!

Fase 5 (15 minuti)

Dopo che ogni gruppo di studenti avrà completato il proprio progetto in Scratch, dedica l’ultima parte della lezione ad una condivisione finale, così da permettere ad ogni team di presentare il proprio artefatto digitale!

Riferimenti e links Riferimenti e links

Per questo progetto si è preso spunto da un progetto presente all’interno della Community di Scratch: https://scratch.mit.edu/projects/2468467/
Trovi il progetto completo in Scratch 2 a questo link
Se vuoi scaricare il progetto completo in Scratch 3.0 clicca qui.

Vuoi leggere la lezione quando vuoi, anche offline?



Hai letto la lezione? Che cosa ne pensi? Lascia un commento qui sotto!