Lezione 9: I miei ciclici amici robotici

Lezione tradizionale | Ciclo | Ripeti

Panoramica

Basandosi sulla precedente attività "I miei amici robotici", gli alunni affrontano progetti più grandi e complessi. Al fine di programmare i loro "robot" affinché completino questi progetti più ambiziosi, gli alunni devono individuare sequenze di istruzioni ripetute che possano essere sostituite da cicli.

Traguardo di apprendimento

Questa lezione serve ad introdurre i cicli, usando l'ormai familiare insieme di istruzioni per programmare i "robot". Gli alunni sviluppano il pensiero critico cercando schemi di ripetizione nei movimenti dei compagni di classe e determinando come semplificare quegli schemi ripetuti usando i cicli.

Pianificazione

Introduzione (10 min)

Attività (30 min)

Conclusione (5 min)

Attività di approfondimento

Visualizza in Code Studio

Obiettivi

Gli alunni saranno in grado di:

  • individuare nel codice gli schemi ripetuti che possono essere sostituiti con dei cicli
  • scrivere programmi che usano le istruzioni di ripetizione (cicli) per eseguire schemi ripetuti

Preparazione

Collegamenti

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

Per gli insegnanti

Per gli alunni

Glossario

  • Ciclo - L'azione di ripetere qualcosa più e più volte.
  • Ripeti - Fai di nuovo qualcosa

Guida didattica

Introduzione (10 min)

Ripasso di "I miei amici robotici"

Robot Symbols

Obiettivo - Questo ripasso permetterà agli alunni di notare quanto possano divenire complessi i programmi dell'attività "I miei amici robotici".

Visualizzazione - Mostra la legenda I miei amici robotici - Legenda che abbiamo usato in "I miei amici robotici". Per ciascuno dei sei simboli, chiedi agli alunni di mostrarti cosa dovrebbe fare un robot che segue quell'istruzione.

Illustrazione - Insieme a tutta la classe, scegli un semplice esercizio dal documento "I miei amici robotici - Suggerimenti per accatastare bicchieri" e fai esercitare gli alunni a programmare tra loro, in modo da riportare alla mente le regole e la terminologia.

Successivamente, proponi un esercizio leggermente più difficile, che richieda alcuni passaggi ripetuti, come quello qui sotto.

Volontari - Chiedi aiuto a un volontario (o a un gruppo di volontari) per programmare tutto ciò alla lavagna. Se si attengono rigorosamente alla regola “nessun simbolo diverso da quelli presenti nella legenda”, probabilmente ci vorrà parecchio tempo!

Visualizzazione - Ora mostra questa immagine:

Che reazione ha la classe?

Suggerimento - Offri agli alunni l'opportunità di ragionare tutti insieme (brainstorming) sui possibili metodi per trasmettere in modo più efficiente il codice che stanno per creare. (Questa parte può essere ignorata se i tuoi alunni iniziano autonomamente a dire cose del tipo: “Vai avanti di 6 volte.” Da questo momento si aprirà la discussione su come mostrare “sei volte” con dei simboli.)

Una volta che gli alunni hanno compreso il concetto di “ripetere” le istruzioni, forniscigli la corretta terminologia. Assicurati che si rendano conto che spesso le espressioni "ripeti" e "fai un ciclo" sono usati come sinonimi.

Attività (30 min)

Introduzione ed illustrazione

Impostazione - Prepara le pile di bicchieri o ritaglia i trapezi di carta per i gruppi.

Visualizzazione - Prendi il programma di uno dei due esempi precedenti e mostralo alla classe, oppure usa il seguente.

3 cup solution

Riflessione - Chiedi agli alunni di osservare con calma dove riescono a trovare una sequenza di istruzioni che si ripete consecutivamente (una ripetizione dopo l'altra).

Esercitazione - Invita gli alunni a rivolgersi a un vicino di banco e condividere uno degli schemi di ripetizione che hanno trovato.

Condivisione - Chiedi ad alcuni alunni di condividere con la classe gli schemi identificati. Prova ad identificare diversi approcci agli schemi di raggruppamento. Per ogni schema, chiedi agli alunni di individuare quante volte si ripete.

Illustrazione - Usando uno degli schemi di ripetizione individuati dalla classe, mostra come cerchiare l'istruzione o la sequenza che si ripete, scrivi il numero di ripetizioni vicini al cerchio, quindi sbarra le frecce sostituite dal ciclo.

looped code

Ripeti fino a quando l'intero programma non è stato abbreviato, quindi riscrivi il codice in modo che gli alunni possano notare quanto sono semplici le istruzioni risultanti.

Aggiungere cicli ai tuoi robot

Esercitazione - Distribuisci gli alunni in gruppi di 4. Dividi quindi ogni gruppo in due coppie: ogni coppia svilupperà il proprio programma che verrà poi "eseguito" dall'altra coppia.

Distribuzione - Fornisci ad ogni gruppo una pila di bicchieri o gli analoghi ritagli di carta.

Visualizzazione - Mostra alla classe il documento Suggerimenti per accatastare bicchieri - Scheda da ritagliare o distribuiscine copie individuali a tutti i gruppi. Chiedi a ciascuna coppia (non al gruppo) di scegliere quale schema vorrebbero far implementare al proprio robot. Questa volta, incoraggia le coppie a scegliere uno schema più complicato.

Suggerimenti

In cerca delle ripetizioni - Accertati che i tuoi alunni si sforzino di usare i cicli. Cerca di evitare di correggere complessivamente i loro algoritmi o di indicare direttamente una soluzione, ma sentiti libero di indirizzare gli alunni verso un utilizzo di schemi che possano essere abbreviati usando dei cicli.

Osserva gli alunni mentre eseguono il loro codice. Ci sono degli errori? Usa le domande di debugging per aiutarli a trovare una soluzione.

  • Che cosa fa?
  • Cosa avrebbe dovuto fare?
  • Questo cosa ti suggerisce?
  • Funziona tutto al primo passo?
  • Funziona tutto al secondo passo?
  • Dove smette di funzionare?

Confronto - Invita ciascun gruppo a discutere su come deve essere costruita la pila di bicchieri, quindi invita gli alunni a tradurre l'algoritmo in simboli. Assicurati che ogni gruppo scriva l'algoritmo di simboli da qualche parte, in modo che poi il "robot" possa leggerlo. Mentre gli alunni lavorano ai loro programmi, ricordagli di cercare valide opportunità per sostituire degli schemi ripetuti con dei cicli.

Esercitazione - Quando gli alunni hanno finito di preparare le loro istruzioni, fai scambiare i programmi tra le coppie in modo che ognuna esegua il codice dell'altra. Ricorda agli alunni di tenere traccia degli errori (bug), ma di non interrompere il "robot" fino al termine dell'esecuzione del programma.

Confronto - Quando tutte le coppie hanno avuto la possibilità di eseguire i programmi, chiedi ad alcuni di condividere le loro soluzioni con la classe. Sfrutta quest'opportunità per discutere di come i gruppi hanno trovato soluzioni diverse per lo stesso esercizio. In particolare, per ciascun programma, potresti chiedere:

  • Come avete identificato i cicli?
  • Ci sono altri modi in cui si potevano scrivere quei cicli?
  • Quanto è più breve un programma che sfrutta la potenzialità dei cicli rispetto all'analogo codice che non ne farebbe uso?
  • È più facile capire un programma scritto i cicli o senza? Perché?

Conclusione (5 min)

Diario di bordo

Obiettivo: fai riflettere gli alunni sull'attività che hanno appena sperimentato.

Tiriamo le somme

Ecco alcuni spunti riepilogativi.

  • Pensate che i cicli rendano la programmazione più semplice o più difficile?
  • Quali altri tipi di azioni ripetiamo nella nostra vita?
    • Mangiare: mettere il cibo in bocca, masticare 20 volte
    • Pettinarsi: passare il pettine per 35 volte
    • Routine giornaliera: svegliarsi, andare a scuola, tornare a casa, andare a letto

Spunti per il diario

  • È il momento del diario! Chiedi agli alunni di disegnare una emoticon nell'angolo della pagina del diario per ricordare loro come si sono sentiti durante questa lezione.
  • Chiedi agli alunni di scrivere o disegnare qualcosa nel loro diario che in seguito gli ricorderà cosa sono i cicli. Potresti suggerire:
    • Per te cosa significa "ripetere"?
    • Disegna una tua immagine mentre ripeti qualcosa.

Attività di approfondimento

  • Chiedi agli alunni di disegnare dei progetti di pile di bicchieri da proporre ad altri compagni che dovranno creare i relativi programmi.
  • Fornisci agli alunni degli algoritmi che utilizzano dei cicli, quindi chiedi loro di scomporli nelle sequenze complete di singole istruzioni.

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-10 - Sviluppa programmi con sequenze e cicli semplici, per esprimere idee o affrontare un problema.
  • 1A-AP-11 - Individua (scompone) i passaggi necessari per risolvere un problema in una sequenza precisa di istruzioni.
  • 1A-AP-14 - Debugging (identifica e correggi) errori in un algoritmo o in un programma che include sequenze e cicli semplici.