Tempo sul giro (scuola media)

Da Wikiversità, l'apprendimento libero.
Jump to navigation Jump to search
lezione
Tempo sul giro (scuola media)
Tipo di risorsa Tipo: lezione
Materia di appartenenza Materia: Informatica per la scuola media 1
Avanzamento Avanzamento: lezione completa al 50%.

Tempo sul giro (cronometro per gioco)[modifica]

Misurazione tempi attività di gioco: tempo sul giro

Versione di Scratch utilizzata[modifica]

La versione di scratch usata in questo progetto è scratch 3.0 online.


Cosa richiede l'esercizio[modifica]

Il gatto percorre un semplice percorso guidato manualmente con le frecce della tastiera il cronometro misura e registra il tempo sul giro. Rispetto al percorso disegnato non c'è nessuna interazione, cosa che ovviamente può/deve essere aggiunta in modo che il gatto sia costretto a girare nel percorso. Per mettere delle interazioni che costringano il gatto a stare nel percorso si può prendere ispirazione da questo tutorial Car racing del Coderdojo Trento

Come funziona il cronometro[modifica]

In questo progetto il tempo sul giro viene registrato facendo uso del timer, di due variabili Tempo e InterrutoreCrono e di una lista Tempi. Fare il remix di questo script modificandolo, semplificandolo, usando meno variabili, dovrebbe essere piuttosto semplice.

Il tempo sul giro viene misurato usando il timer che si trova nelle sezione dei blocchi Sensing (azzurri). Il gatto, Sprite1, ogni volta che passa sulla linea di Partenza/Arrivo tocca lo sprite Paddle, una linea rossa verticale corta.

Ogni volta che il gatto passa sulla linea, che i due sprite si toccano, la linea scompare per un secondo, in modo che l'istante in cui avviene il tocco sia unico.

Al primo passaggio del gatto viene azzerato e avviato il timer e il cronometro che è spento, InterrutoreCrono vale 0, viene acceso, portando InterrutoreCrono al valore 1 dallo script che riceve il messaggio Partenza.

Nei successivi passaggi viene registrato il Tempo nella variabile tempo che assume il valore del timer al passaggio. Il timer viene azzerato e così riavviato. Il tempo registrato viene inserito nella lista Tempi. Ovviamente questo comportamento è modificabile, ad esempio programmando degli script in modo che venga tenuto registrato solo il miglior tempo.

Sfondo[modifica]

Istruzioni Immagini
Disegnamo una pista sullo sfondo PistaTempoSulGiro


Gatto (veicolo)[modifica]

Per prima cosa uno inseriamo lo script per guidare il gatto, ovviamente in un progetto che usi il cronometro il gatto può essere sostituito da una macchinina o da qualsiasi altro veicolo ed anche il modo in cui lo si guida può essere modificato, vedi ad esempio Guidare con le frecce.

Sprite Blocchi codice Istruzioni
Gatto di Scratch GreenFlagDrivingCat Guidare il gatto con le frecce, inizialmente il gatto si posiziona in prossimità della linea di Partenza/Arrivo in posizione (-40,-140) puntando in direzione destra (90). questo script di guida del gatto è quello suggerito a pagina 24 nel manuale Programmo anch'io

Gatto script per il funzionamento del cronometro[modifica]

Sprite Blocchi codice Istruzioni
Gatto di Scratch 400px GreenFlagDeleteAllTempi Inizializzare la lista Tempi: la lista viene azzerata.
Sprite Blocchi codice Istruzioni
Gatto di Scratch GreenFlagInizializzazione Inizializzazione del timer della variabile Tempo e dell'InterrutoreCrono, sial il timer che la viariabile InterrutoreCrono vengono portati a 0.
Sprite Blocchi codice Istruzioni
Gatto di Scratch GreenFlagTouchingPaddleBroadcast Ogni volta che il gatto passa dalla linea di partenza, e tocca lo sprite Paddle invia i messaggi per: salvare il tempo fatto sul giro, azzerare il cronometro e cominciare a misurare il tempo del giro successivo.
Sprite Blocchi codice Istruzioni
Gatto di Scratch WhenReceiveArrivo Alla ricezione del messaggio Arrivo deve essere inserito il tempo registrato nella lista Tempi ed 'InterrutoreCrono deve essere mantenuto sul valore 1 (acceso).
Sprite Istruzioni Blocco codice1
Gatto di Scratch WhenReceivePartenza Al primo passaggio dalla linea di Partenza/Arrivo deve essere azzerato il timer e l'InterrutoreCrono deve essere portato ad 1 (acceso).

Linea della partenza/arrivo[modifica]

Sprite Blocchi codice Istruzioni
LineaRossa
GreenFlagTouchingCatHideShow La linea della partenza Paddle deve nascondersi appena tocca il gatto, Sprite1, in modo che sia ben definito l'istante in cui avviare il timer, dopo un secondo la linea può riapparire. Questo serve a fare si che che ci sia un solo tocco tra i due sprite, che altrimenti continuando a toccarsi manderebbero più di un messaggio.

Progetto funzionante[modifica]

https://scratch.mit.edu/projects/340517367/

Note[modifica]

Bibliografia[modifica]

  • Guida all’uso di Scratch Versione Studenti; Alberto Barbero, Marco Marchisotti, Alberto Davì; Associazione Dschola, Iniziativa realizzata nell’ambito del progetto Diderot della Fondazione CRT, 2014

Collegamenti esterni[modifica]