Scratch e virus

È possibile utilizzare il coding per simulare la trasmissione di un virus?

Partendo da un lavoro di Noelia Di Pretoro, vediamo come sia possibile creare una simulazione, molto semplificata, di trasmissione di un virus utilizzando alcune variabili, la clonazione e i blocchi personalizzati di Scratch.

Ci serve un solo sprite, con cinque costumi di forma uguale, ma di diverso colore: sano non immunizzato, contagiato, malato, immunizzato, morto (Figura 1).

Figura 1

Le variabili da creare (Figura 2) riguardano: il numero delle persone contagiate, la contagiosità (da 0.0 a 1.0), la durate dell’incubazione (0, 1, 2 ecc.) la durata della malattia (0, 1, 2 ecc.), le persone immunizzate, quelle malate, quelle morte, le sane non immunizzate, il tasso di mortalità (da 0.0 a 1.0), il totale delle persone e una variabile per la partenza (start).

Figura 2

Il primo script (Figura 3) inizializza le variabili (si possono usare valori diversi, ovviamente; anzi è consigliabile provare e riprovare) e clona lo sprite.

Figura 3

Il secondo script (Figura 4) gestisce il momento in cui lo sprite viene clonat0, terminando con la chiamata della procedura muovi persona.

Figura 4

Il terzo script (Figura 5) rappresenta la procedura muovi persona. A seconda del numero del costume del clone, si controlla se la persona sana non immunizzata (costume n. 1) sta toccando una persona malata o contagiata (nel senso di contagiosa, ma non ancora malata).

Nel caso di costume uguale a 2 (persona contagiata), si lancia la procedura muovi contagiato e si usa il cronometro di Scratch per “fissare” il tempo in cui quel clone comincia a muoversi. Si passa anche la velocità del clone, nel caso si volessa cambiarla quando il clone diventa contagiato o malato.

Figura 5

Il quarto script (Figura 6) riguarda la procedura muovi contagiato, che dopo un tot di secondi viene passato alla status di malato.

Da notare che si potrebbe modificare la velocità del contagiato (per farlo andare più lento rispetto a prima).

Figura 6

Il quinto script (Figura 7) mostra la procedura muovi malato, simile alla precedente. In questo caso, però, dopo i secondi di durata della malattia, a secondo del tasso di mortalità, il clone può diventare immunizzato (costume blu) oppure morto (costume nero, timbrato sullo screen).

Figura 7

Come annunciato, il programma è molto semplice e può essere notevolmente migliorato.

Si consiglia di modificare il valore iniziale delle variabili studiando i risultati che via via si ottengono.

One clap, two clap, three clap, forty?

By clapping more or less, you can signal to us which stories really stand out.