# Genetica con Scratch (scuola media)

Genetica con Scratch è un progetto che spiega in modo semplice e chiaro le leggi genetiche formulate da Gregor Mendel.
Tali leggi sono frutto di un esperimento eseguito sulle piante di piselli, mischiandone le caratteristiche genetiche per analizzare tutte le combinazioni possibile per una pianta.
Attraverso il software Scratch possiamo generare una pianta di piselli impostandone le caratteristiche genetiche - cioè i geni del colore e della forma - e successivamente mischiare due piante per analizzare la pianta risultante ottenuta.
La pianta di piselli generata seguirà le leggi della genetica, permettendo di capire in modo semplice il funzionamento delle leggi di Mendel attraverso una rappresentazione grafica.

## Gregor Mendel

Gregor Mendel (1822 - 1884) è stato un monaco che ha studiato i caratteri genetici delle piante. Ha coltivato e analizzato più di 28.000 piante di piselli durante la sua vita ed ha analizzato i risultati del suo esperimento. È conosciuto mondialmente per essere il padre della genetica, una scienza che studia le informazioni contenute nel DNA di ogni essere vivente.

## L'esperimento

L'esperimento dei piselli mostra come vengono ereditati i geni del DNA dai genitori ai figli. In questo caso, Mendel ha usato delle piante di pisello di diverso colore e forma:
* i piselli gialli (G)
* i piselli verdi (v)
* i piselli lisci (L)
* i piselli rugosi (r)

### I geni

Ogni pianta di pisello ha una coppia di geni che identificano il colore del pisello e un'altra coppia che ne indica la forma. I quattro geni sopra, si dividono in dominanti e recessivi:
| | Colore | Forma |
| Dominante | G | L |
| Recessivo | v | r |
Se entrambi i geni sono recessivi allora, il pisello avrà la caratteristica recessiva:
| | frame type | frame type |
| Colore | v | v |
| Forma | r | r |
Se è presente anche solo un gene dominante, il pisello assumerà quella caratteristica:
| | frame type | frame type |
| Colore | G | v |
| Forma | r | r |
| | frame type | frame type |
| Colore | v | v |
| Forma | L | r |
| | frame type | frame type |
| Colore | G | G |
| Forma | L | L |
Tutte le combinazioni possibile per una pianta di pisello:

### Descrizione dell'esperimento

Mendel ha utilizzato 2 ettari di campi per i suoi esperimenti. Ha coltivato tantissime piante di piselli per scoprire come vengono ereditati i geni mischiando diverse piante tra loro, per trovare tutte le combinazioni possibili.
Combinare due piante di piselli significa mischiare i caratteri genetici di due piante per ottenerne una con geni casuali derivati dai genitori.

## Genetica con Scratch

Per realizzare il programma abbiamo bisogno della Scratch 3.0 Online disponibile sul sito ufficiale.

#### Titolo del progetto

Il titolo del progetto è: Genetica con Scratch

### Pianta di piselli

La pianta di piselli ha due caratteristiche:
* il colore
* la forma
Sia il colore che la forma sono definiti da due caratteri (cioè due valori). Bisogna creare uno schema che permetta di scegliere i due caratteri per il colore e per la forma:
1° Carattere del colore (A1) :
| Costumi | Script | Commento |
| | | Inverte il colore del carattere cliccato. Quando si clicca sullo sprite, se il costume dello sprite è il primo, ovvero quello di colore giallo [A1.1.GIALLO], lo sprite passa a quello verde [A1.2.VERDE); se invece non è di colore giallo, quindi di colore verde, lo sprite passa al costume giallo. |
| | | Porta il carattere nella posizione corretta. Sposta continuamente il carattere nella posizione corretta e lo rende non trascinabile. |
2° Carattere del colore (A2) :
| Costumi | Script | Commento |
| | | Inverte il colore del carattere cliccato. Quando si clicca sullo sprite, se il costume dello sprite è il primo, ovvero quello di colore giallo [A2.1.GIALLO], lo sprite passa a quello verde [A2.2.VERDE]; se invece non è di colore giallo, quindi di colore verde, lo sprite passa al costume giallo. |
| | | Porta il carattere nella posizione corretta. Sposta continuamente il carattere nella posizione corretta e lo rende non trascinabile. |
1° Carattere della forma (A3) :
| Costumi | Script | Commento |
| | | Inverte la forma del carattere cliccato. Quando si clicca sullo sprite, se il costume dello sprite è il primo, ovvero quello di forma liscia [A3.1.LISCIO], lo sprite passa a quello di forma rugosa [A3.2.RUGOSO]; se invece non è di forma liscia, quindi di forma rugosa, lo sprite passa al costume rugoso. |
| | | Porta il carattere nella posizione corretta. Sposta continuamente il carattere nella posizione corretta e lo rende non trascinabile. |
2° Carattere della forma (A4) :
| Costumi | Script | Commento |
| | | Inverte la forma del carattere cliccato. Quando si clicca sullo sprite, se il costume dello sprite è il primo, ovvero quello di forma liscia [A4.1.LISCIO], lo sprite passa a quello di forma rugosa [A4.2.RUGOSO]; se invece non è di forma liscia, quindi di forma rugosa, lo sprite passa al costume rugoso. |
| | | Porta il carattere nella posizione corretta. Sposta continuamente il carattere nella posizione corretta e lo rende non trascinabile. |
Risultato :
| Costumi | Script | Commento |
| | | Assegna al risultato la forma e colore giusti. Ripete continuamente i seguenti controlli: Se i colori dei caratteri sono entrambi verdi (il colore recessivo) e se le forme dei caratteri sono entrambe rugose (la forma recessiva) lo sprite passa al costume verde e rugoso [RISULTATO.4.VERDE.RUGOSO], se invece le forme non sono entrambe recessive, lo sprite passa al costume verde, ma liscio [RISULTATO.2.VERDE.LISCIO]; se è presente un carattere di colore giallo, ma le forme sono entrambe recessive, lo sprite passa al costume giallo rugoso [RISULTATO.3.GIALLO.RUGOSO], altrimenti passa al costume giallo e liscio [RISULTATO.1.GIALLO.LISCIO]. |
| | | Porta il risultato nella posizione corretta. Sposta continuamente il risultato nella posizione corretta e lo rende non trascinabile. |

### Generazione della pianta

La pianta generata dalla combinazione delle due è creata nello stesso modo delle altre. L'unica differenza è che ogni carattere genetico è assegnato in modo casuale tra i caratteri delle piante genitori dei genitori.
Pulsante :
| Costumi | Script | Commento |
| | | Invia un messaggio a tutti gli sprite Invia il messaggio ‘INCROCIA’ a tutti gli sprite. Gli sprite aggiornano il loro costume una volta ricevuto questo messaggio. |
1° Carattere del colore, figlio (C1) :
| Costumi | Script | Commento |
| | | Eredita uno dei due caratteri dal padre. Quando si riceve il messaggio inviato dal pulsante, lo sprite passa ad un costume casuale tra quelli che ha il padre. In particolare si applica il costume in una posizione casuale compresa tra le posizioni dei costumi del carattere del padre [A1] e [A2]. |
| | | Porta il carattere nella posizione corretta. Sposta continuamente il carattere nella posizione corretta e lo rende non trascinabile. |
2° Carattere del colore, figlio (C2) :
| Costumi | Script | Commento |
| | | Eredita uno dei due caratteri dalla madre. Quando si riceve il messaggio inviato dal pulsante, lo sprite passa ad un costume casuale tra quelli che ha la madre. In particolare si applica il costume in una posizione casuale compresa tra le posizioni dei costumi del carattere della madre [B1] e [B2]. |
| | | Porta il carattere nella posizione corretta. Sposta continuamente il carattere nella posizione corretta e lo rende non trascinabile. |
1° Carattere della forma, figlio (C3) :
| Costumi | Script | Commento |
| | | Eredita uno dei due caratteri dal padre. Quando si riceve il messaggio inviato dal pulsante, lo sprite passa ad un costume casuale tra quelli che ha il padre. In particolare si applica il costume in una posizione casuale compresa tra le posizioni dei costumi del carattere del padre [A3] e [A4]. |
| | | Porta il carattere nella posizione corretta. Sposta continuamente il carattere nella posizione corretta e lo rende non trascinabile. |
2° Carattere della forma, figlio (C4) :
| Costumi | Script | Commento |
| | | Eredita uno dei due caratteri dalla madre. Quando si riceve il messaggio inviato dal pulsante, lo sprite passa ad un costume casuale tra quelli che ha la madre. In particolare si applica il costume in una posizione casuale compresa tra le posizioni dei costumi del carattere della madre [B3] e [B4]. |
| | | Porta il carattere nella posizione corretta. Sposta continuamente il carattere nella posizione corretta e lo rende non trascinabile. |
Figlio :
| Costumi | Script | Commento |
| | | Assegna al figlio la forma e colore giusti. Ripete continuamente i seguenti controlli: Se i colori dei caratteri sono entrambi verdi (il colore recessivo) e se le forme dei caratteri sono entrambe rugose (la forma recessiva) lo sprite passa al costume verde e rugoso [FIGLIO.4.VERDE.RUGOSO], se invece le forme non sono entrambe recessive, lo sprite passa al costume verde, ma liscio [FIGLIO.2.VERDE.LISCIO]; se è presente un carattere di colore giallo, ma le forme sono entrambe recessive, lo sprite passa al costume giallo rugoso [FIGLIO.3.GIALLO.RUGOSO], altrimenti passa al costume giallo e liscio [FIGLIO.1.GIALLO.LISCIO]. |
| | | Porta il risultato nella posizione corretta. Sposta continuamente il figlio nella posizione corretta e lo rende non trascinabile. |