Lezione 5: Mappe felici

Algoritmi | Sequenza di istruzioni | Lezione tradizionale

Panoramica

In questa lezione tradizionale le squadre hanno un semplice compito: far arrivare il personaggio Flurb fino alla frutta. Gli alunni si eserciteranno a scrivere una sequenza di istruzioni molto precise, traducendole nello specifico linguaggio costituito dai simboli forniti. Se avranno problemi con questo codice, gli alunni dovranno collaborare tra loro per cercare gli errori e trovare adeguate soluzioni.

Traguardo di apprendimento

Il passo da algoritmi a programmazione può essere breve, se gli alunni comprendono a fondo la differenza tra definire una sequenza di istruzioni generiche e tradurla in uno specifico linguaggio. Questa attività li aiuterà ad acquisire esperienza nella lettura e nella scrittura di un codice.

Pianificazione

Introduzione (5 min)

Attività (40 min)

Conclusione (8 min)

Approfondimenti

Visualizza in Code Studio

Obiettivi

Gli alunni saranno in grado di:

  • tradurre un algoritmo in un programma
  • decifrare ed eseguire un programma creato da qualcun altro
  • individuare e risolvere anomalie o errori nelle sequenze di istruzioni

Preparazione

  • Stampa le Schede Mappe Felici per ogni gruppo.
  • Stampa i pezzi del gioco Mappe Felici per ogni gruppo.
  • Assicurati che ogni alunno abbia il proprio Diario di bordo.

Collegamenti

Attenzione! Fai una copia di tutti i documenti che intendi condividere con gli alunni.

Per gli insegnanti

Per gli alunni

Glossario

  • Algoritmo - Un elenco di passaggi per completare un compito.
  • Debugging (correzione degli errori) - Individuazione e risoluzione di problemi in un algoritmo o in un programma.
  • Programma - Un algoritmo che è stato tradotto in un linguaggio che può essere interpretato ed eseguito da una macchina.

Guida didattica

Introduzione (5 min)

Passo dopo passo

Con questa attività preliminare si ha lo scopo di far riflettere gli alunni su come suddividere un problema in un elenco di singoli passaggi.

Illustrazione - Chiedi alla classe indicazioni passo dopo passo per raggiungere la lavagna. Chiedi agli alunni di suddividere le indicazioni più vaghe e generali, come "Cammina verso la lavagna", in una serie di istruzioni più specifiche come "Fai un passo avanti".

Quando raggiungi la lavagna, fatti dare istruzioni per disegnare una faccina sorridente e, anche in questo caso, cerca di far mantenere le istruzioni molto specifiche.

Suggerimenti

Se in classe tutti iniziano ad urlare contemporaneamente, spiega che sei in grado di ascoltare solo un'istruzione alla volta. Se questo può aiutarti, invita singolarmente gli alunni ad intervenire.

Dì: "Ben fatto! Mi avete appena fornito un elenco di passaggi per completare un'attività. In informatica questo si chiama algoritmo!" [Procedi con il metodo che usi normalmente per introdurre nuovi vocaboli: liste appese al muro, ripetiamo-insieme, ecc.]

Attività (40 min)

Programmazione Mappe felici

In questo esercizio, la classe riceverà delle schede con delle mappe in cui c'è una casella di partenza predefinita (con il personaggio Flurb) ed una di destinazione (con la frutta). Usando le frecce a disposizione, gli alunni dovranno portare Flurb fino alla frutta su ogni scheda.

Visualizzazione

Illustrazione - Seleziona una delle mappe intermedie, come quella qui sopra. Mostrala alla classe e risolvete insieme l'esercizio.

Chiedi agli alunni di analizzare l'esercizio, quindi di trovare insieme al proprio compagno di banco la soluzione per portare il personaggio Flurb fino alla frutta.

Riflessione - Flurb deve fare due passi per reggiungere la frutta. Collabora con il tuo compagno di banco per decidere quali pensi siano questi due passi.

Confronto - Chiedi agli alunni di discutere con i vicini per circa 90 secondi.

Condivisione - Chiedi ad alcuni alunni di raccontare il loro algoritmo a tutta le classe. Muovi il dito lungo la mappa visualizzata mentre gli alunni leggono i loro passaggi. Una volta completata una soluzione, chiedi se qualcun altro ha avuto un'idea diversa che funzioni ugualmente.

Ora rivela agli alunni che la "magia" per trasformare un algoritmo in un "programma" avviene quando si scrive il codice usando i simboli previsti. Gli alunni vedono dei simboli sullo schermo?

Riflessione - Sfida gli alunni a codificare in simboli l'algoritmo che hanno escogitato e a scrivere quei simboli sui loro diari (o su un altro foglio.)

Esercitazione - Una volta che gli alunni hanno scritto il loro programma con i simboli, chiedi loro di scambiarli con un compagno, per verificare se sono in grado di seguire le istruzioni predisposte da altri.

Condivisione - Chiedi a dei volontari di venire a disegnare le loro frecce sulla lavagna. Se il codice originale non funziona, dedica del tempo per eseguire il debugging insieme a tutta classe. Gli alunni dovrebbero avere familiarità con l'idea di "debugging" presentata nelle lezioni precedenti, quindi assicurati di usare il glossario per metterli a proprio agio su questo tema.

Una volta che il codice è stato scritto correttamente sulla lavagna, congratulati con tutta la classe per aver scritto insieme il loro primo programma!

Ora tocca a loro

Esercitazione - Se la classe si trova bene, dividila in gruppi di 2 o 3 alunni. Altrimenti, puoi continuare a risolvere questi problemi alla lavagna e farli lavorare in coppia per scrivere i relativi programmi.

Distribuzione - Distribuisci a ciascun gruppo un'immagine tratta da Schede Mappe felici - Esercitazione.
(Facoltativo) Se noti che gli alunni sono pronti per andare oltre, usa i Parti del gioco Mappe felici - Scheda da ritagliare e permetti loro di definire la casella di inizio e quella di destinazione sulla mappa vuota.

Incoraggia gli alunni a seguire questi passaggi:

  • pensa ad un algoritmo che porti Flurb fino alla frutta,
  • sul tuo diario, traduci l'algoritmo nel codice a frecce,
  • prova il codice per verificare se tutto funziona come previsto,
  • esegui il debugging di eventuali problemi per correggere il programma, fino a quando non funziona tutto correttamente.

Condivisione - Al termine della lezione, proponi ai gruppi di condividere le mappe più difficili che hanno risolto. Se c'è tempo, fai anche condividere le relative soluzioni.

Conclusione (8 min)

Tiriamo le somme

Confronto - Quando ci si avvia verso la conclusione, chiedi agli studenti se sanno distinguere tra un algoritmo e un programma. Entrambi sono un elenco di passaggi, ma un programma (codice) è stato tradotto in modo che possa essere compreso ed eseguito da una macchina (o da una scuola dell'infanzia!)

  • Pensi che qualcuno che parla un'altra lingua saprebbe eseguire il tuo programma?
  • Perché o perché no?

Diario di bordo

Gli alunni dovrebbero essere incoraggiati ad appuntare i loro pensieri nel loro diario di bordo dopo ogni attività (con testo o immagini.) Suggerisci un tema che aiuti gli alunni a ricordare lo scopo di questo esercizio.

Suggerimenti per il diario

  • Di cosa parlava la lezione di oggi?
  • Disegna nell'angolo della pagina del tuo diario una delle Faccine delle emozioni - Emoticon che mostri come ti sei sentito durante la lezione di oggi.
  • Riesci a disegnare la tua mappa per Flurb?
  • Quale sarebbe il codice per risolvere la tua mappa?

Approfondimenti

Sfrutta queste attività per migliorare l'apprendimento degli alunni. Possono anche essere utilizzate come attività extra scolastiche.

Mappe peluche

  • Usa del nastro adesivo per creare sul pavimento (o su un grande tappeto) una griglia a grandezza naturale e chiedi agli alunni di portare a scuola degli animali di peluche.
  • Ora gli alunni possono "programmare" i loro compagni per spostare degli oggetti reali come indicato nei programmi.

Crea la tua mappa

  • Chiedi agli alunni di creare le proprie mappe.
  • Chiedi ad altri alunni di risolverle usando i programmi.

Mappatura delle competenze

Visualizza la mappatura completa del corso

CSTA K-12 Computer Science Standards (2017)

AP - Algoritmi e programmazione
  • 1A-AP-09 - Modella il modo in cui i programmi memorizzano e manipolano i dati utilizzando numeri o altri simboli per rappresentare le informazioni.
  • 1A-AP-11 - Individua (scompone) i passaggi necessari per risolvere un problema in una sequenza precisa di istruzioni.

Competenze interdisciplinari

Questo elenco riporta le competenze di altre materie sulle quali gli alunni hanno l'opportunità di esercitarsi in questa lezione.

Competenze linguistiche

L - Lingua
  • K.L.6 - Utilizzare parole e frasi acquisite attraverso conversazioni, letture e in risposta ai testi.
SL - Parlare e ascoltare
  • K.SL.1 - Partecipare a conversazioni collaborative con i diversi partner su temi di educazione nella scuola materna e lo scambio di informazioni con i coetanei e gli adulti in piccoli e grandi gruppi.
  • K.SL.2 - Confermare la comprensione di un testo letto ad alta voce o le informazioni esposte oralmente o attraverso altri media chiedendo e rispondendo alle domande su particolari chiave e richiedendo chiarimenti se qualcosa non è chiaro.
  • K.SL.5 - Aggiungere disegni o altre rappresentazioni visive alle descrizioni come richiesto allo scopo di fornire ulteriori dettagli.

Competenze matematiche

G - Geometria
  • K.G.1 - Descrivere gli oggetti nell'ambiente usando nomi di forme e descrivi le posizioni relative di questi oggetti usando termini come sopra, sotto, accanto, davanti, dietro e accanto a.
MP - Esercizi di matematica
  • MP.1 - Comprende il significato dei problemi e persevera nella loro soluzione.
  • MP.2 - Ragiona in modo astratto e quantitativo.
  • MP.6 - Punta alla precisione.
  • MP.7 - Cerca e fa uso di strutture.
  • MP.8 - Cerca ed esprime delle regolarità nel ragionamento ciclico.

Competenze scientifiche

ETS - Engineering in the Sciences
ETS1 - Progettazione
  • K-2-ETS1-1 - Porre domande, fare osservazioni e raccogliere informazioni su una situazione che le persone vogliono cambiare per definire un semplice problema che può essere risolto attraverso lo sviluppo di un oggetto o strumento nuovo o migliorato.
  • K-2-ETS1-2 - Sviluppare un semplice schizzo, disegno o modello fisico per illustrare come la forma di un oggetto lo aiuti a funzionare come necessario per risolvere un dato problema.