Trovare un numero primo con Scratch

Trovare un numero primo con Scratch

Realizziamo un semplice programma per trovare un numero primo con Scratch.

Scegliamo uno sfondo e uno sprite qualsiasi.

Io ad esempio ho scelto questa scena.

sfondo numero primo con Scratch

Dopo chiediamo al nostro programma di inserire un numero in input, realizzando lo script sul gattino. Memorizziamo il numero immesso da tastiera in una variabile di nome numero.

chiedere un numero

Per verificare se un numero è primo dobbiamo dividerlo progressivamente per un numero che parta da 1 e che si fermi al numero stesso. Così al termine se i divisori sono solo due allora il numero è primo.

Quindi impostiamo la variabile divisore ad 1. Dopo costruiamo un ciclo ripeti fino a quando che faremo terminare quando il divisore raggiunge il numero, escludendo proprio la divisione per il numero stesso. Difatti tutti i numeri sono divisibili per se stesso e per uno. Quindi iniziamo escludendo proprio il numero stesso.

divisore

Il divisore ogni volta si incrementa di 1 ed il ciclo continuerà fino a quando il divisore arriva a numero -1. Infatti non appena la condizione numero=div è verificata si esce fuori dal ciclo.

Adesso ci serve un contatore che si incrementi ogni volta che troviamo un divisore. Chiamiamo questo contatore conta e lo inizializziamo a zero. Dopo, se troviamo un divisore allora incrementiamo il suo valore di 1.

Quindi adesso ci rimare da controllare, alla fine del ciclo, se il contatore vale più di 1. Se si, allora il numero non è primo.

primo

Trovare un numero primo con Scratch – ottimizzazione

Chiaramente è possibile fare alcune ottimizzazioni, infatti potremmo uscire fuori dal ciclo non appena viene trovato un divisore.

Modifichiamo la condizione inserendo tramite l’operatore logico o la condizione conta >1.

Ecco dunque il programma completo:

Trovare un Numero primo con Scratch ottimizzazione

Questo è un semplice esempio per trovare un numero primo con Scratch, nella prossima lezione implementeremo altri algoritmi.

Alcuni link utili

Indice tutorial Scratch 3.0

Indice argomenti Scratch 2.0

Numeri primi in Scratch

Massimo fra tre numeri in Scratch

Minimo tra 3 numeri in Scratch

Numeri perfetti con algobuild

Numeri amicabili

Selecion sort in Scratch

Esempio di successione di Fibonacci con Algobuild

La successione di Fibonacci in C++

Lista in Scratch

Lista in Scratch

Una lista in Scratch è un contenitore che permette di contenere più valori alla volta, per poi essere richiamati all’occorrenza.

Lista in Scratch

Per creare una lista in Scratch occorre andare nella sezione variabili e dopo scegliere il pulsante crea lista.

crea lista

Creiamo dunque il nostro semplice programma che utilizza le liste, un quiz con le regioni d’Italia ed il loro capoluogo.

Geografia con Scratch

Ecco come abbiamo pensato di realizzare il quiz di geografica con Scratch:

Per implementare lo script, scegliamo innanzitutto lo sfondo e gli sprite necessari.

sprite

Lo sprite per le regioni lo realizziamo con delle immagini che le rappresentano. Quindi personalizziamo lo sprite aggiungendo i vari costumi:

costumi scratch

Adesso dobbiamo creare una lista in Scratch per le regioni ed un’altra per i capoluoghi. Possiamo crearle anche nello sprite delle regioni.

Uso dello strumento lista in Scratch

Ecco dunque le liste regioni e capoluogo:

lista

Adesso occorre realizzare lo script per eseguire le domande. Inseriamo questo codice sempre nello sprite delle regioni.

codice gattino

Definiamo un nuovo blocco domande e inseriamo il codice necessario seguendo questi passi:

1. Passiamo al primo costume disponibile, nel nostro caso Sicilia.

2. Assegniamo alla variabile punti il valore 0. La variabile punti serve a contare le domande giuste.

3. La variabile i serve a scorrere la lista. Parte da 1 e arriverà fino alla lunghezza della lista, in questo caso 20. Dunque assegniamo ad i il valore iniziale 1.

4. Realizziamo un ciclo che termina quando avrà finito di leggere gli elementi della lista.

In questo ciclo ripetiamo i seguenti passaggi:

 – Chiediamo il capoluogo del primo elemento della lista regione.

– Confrontiamo la risposta con il primo elemento della lista capoluogo.

– Se la risposta è corretta aggiungiamo un punto al punteggio precedentemente accumulato.

– Passiamo al costume seguente che rappresenta la nuova regione e cambiamo il contatore i di 1.

Al termine del ciclo, inviamo il messaggio 1 che verrà ricevuto dallo sprite del gatto.

Quindi aggiungiamo il blocco domande sotto il comando quando si clicca sulla bandierina verde.

Adesso aggiungiamo il codice necessario per far parlare il gattino di Scratch.

Finché ci sono elementi nella lista visualizziamo con un messaggio il punteggio raggiunto.

Quando il gattino riceve il messaggio 1, vuol dire che tutte le domande sono state terminate e dunque visualizza il messaggio opportuno in base al punteggio raggiunto.

codice sprite Scratch

Abbiamo terminato il nostro programma che utilizza lo strumento lista in Scratch.

Alcuni link utili

Indice tutorial Scratch 3.0

Indice argomenti Scratch 2.0

Numeri primi in Scratch

Massimo fra tre numeri in Scratch

Minimo tra 3 numeri in Scratch

Numeri perfetti con Algobuild

Numeri amicabili

Selecion sort in Scratch

Esempio di successione di Fibonacci con Algobuild

La successione di Fibonacci in C++

Scratch 3

Scratch 3

Scratch 3 è la nuova versione del software più utilizzato per la programmazione a blocchi, che è possibile utilizzare anche online.

Ci sono tante novità rispetto alla versione precedente, soprattutto dal punto di vista grafico. Infatti il programma è diventato ancora più intuitivo e semplice da utilizzare.

Scratch 3 online

Per utilizzare Scratch possiamo eseguire varie procedure e cioè utilizzarlo dal sito ufficiale online oppure scaricarlo sul proprio computer.

Come prima cosa vediamo come utilizzarlo dal sito ufficiale.

Occorre andare al seguente link https://scratch.mit.edu/ e cliccare sul collegamento crea in alto a sinistra oppure, in alternativa, sul pulsante inizia a creare.

Scratch 3 online

In entrambi i casi si aprirà una schermata, come quella della figura sotto, dove è possibile seguire il tutorial oppure iniziare a creare direttamente i nostri programmi.

area di lavoro Scratch 3 online

Per maggior comodità potete anche cambiare la lingua impostata di default. Basta andare nel logo in alto a sinistra, che rappresenta il mappamondo e selezionare italiano.

Scratch 3 online italiano

Dal menù file è possibile salvare il lavoro che abbiamo realizzato o caricarne uno già fatto.

Scratch salva

Scratch 3 online e la community

Inoltre, se si desidera, è anche possibile unirsi alla community registrandosi nell’apposita area, per poter condividere con gli altri i progetti realizzati.

community

Scratch 3 download versione offline

In alternativa è possibile utilizzare Scratch in modalità offline, scaricandolo dunque sul vostro computer.

Quindi occorre andare nella sezione in basso, nell’area dedicata al supporto e scegliere la voce scarica sul tuo computer.

Dopo, nella pagina che si apre, bisogna scegliere la versione in base al sistema operativo del vostro dispositivo e poi cliccare su download diretto.

Conclusioni

Questo semplice tutorial è solo una semplice introduzione al programma, nella prossima lezione analizzeremo quali sono gli strumenti che Scratch ci mette a disposizione.

Alcuni link utili

Indice tutorial Scratch 3

Indice argomenti Scratch 2

Numeri primi in Scratch

Massimo fra tre numeri in Scratch

Minimo tra 3 numeri in Scratch 3

Numeri perfetti con Algobuild

Numeri amicabili

Selecion sort in Scratch

Esempio di successione di Fibonacci con Algobuild

La successione di Fibonacci in C++

Sviluppo con Algobuild della successione di Fibonacci

Coding scuola primaria

Coding scuola primaria

Coding scuola primaria – Proponiamo una serie di esercizi che possono essere utili soprattutto alla didattica del coding nella la scuola primaria.

Coding scuola primaria – esempio di animazione

Questo esercizio è stato sviluppato da Lorenzo, il mio bimbo più piccolo e adesso lo presentiamo per consentire agli altri di prendere spunti e idee.

Vediamo subito la dimostrazione di quello che fa l’animazione:

La scena si svolge su una spiaggia e gli attori sono due giocatori.

Da un lato abbiamo quindi un calciatore che lancia una palla da basket e dall’altra parte l’altro giocatore che la prende. Il tutto si ripete tre volte e dopo la semplice animazione termina.

Coding scuola primaria – Procedimento

Per realizzare questo esercizio innanzitutto scegliamo uno sfondo e gli sprite necessari. Noi abbiamo scelto lo sfondo Beach Rio e gli sprite Ben, Andie e Basketball.

Quindi su Ben abbiamo inserito questo codice:

1. Scegliamo il blocco di inizio quando si clicca sulla bandiera verde

2. Dopo partiamo dal costume ben-d e diamo un messaggio di benvenuto.

3. Quindi con un ciclo che si ripete 3 volte cambiamo costume ogni secondo per mimare il movimento del calcio alla palla.

4. Quando il ciclo termina si passa al costume ben-c e si visualizza in output il messaggio che il gioco è finito.

5. Infine si inserisce il blocco ferma tutto.

scuola primaria coding

In maniera analoga costruiamo gli script sugli altri sprite.

Su Andie:

calcio coding

E infine sulla palla:

blocco per sempre

Inoltre inseriamo anche una musica sullo sfondo che dura per tutto il gioco:

musica coding

Ecco un semplicissimo progetto sul coding adatto anche ai bimbi della scuola primaria.

Questa sezione ‘Coding scuola primaria’ sarà ampliata con tanti altri esempi ed esercizi utili.

Alcuni link utili

Indice tutorial Scratch 3.0

Indice argomenti Scratch 2.0

Numeri primi in Scratch

Massimo fra tre numeri in Scratch

Minimo tra 3 numeri in Scratch

Numeri perfetti con Algobuild

Numeri amicabili

Selecion sort in Scratch

Esempio di successione di Fibonacci con Algobuild

La successione di Fibonacci in C++

Sviluppo con Algobuild della successione di Fibonacci

Coding Natale

Coding Natale

Coding Natale – In questa lezione svilupperemo una semplice animazione in Scratch per augurare Buon Natale!

Utilizziamo una poesia di Madre Teresa di Calcutta.

È Natale ogni volta
che sorridi a un fratello
e gli tendi la mano.
È Natale ogni volta
che rimani in silenzio
per ascoltare l’altro.
È Natale ogni volta
che non accetti quei principi
che relegano gli oppressi
ai margini della società.
È Natale ogni volta
che speri con quelli che disperano
nella povertà fisica e spirituale.
È Natale ogni volta
che riconosci con umiltà
i tuoi limiti e la tua debolezza.
È Natale ogni volta
che permetti al Signore
di rinascere per donarlo agli altri.

Coding Natale con Scratch

Ecco la semplice animazione creata con Scratch.

Sviluppo del codice con Scratch

Per lo sviluppo dell’esempio ‘coding di Natale con Scratch’ utilizzeremo principalmente la tecnica dello scambio dei messaggi.

Infatti grazie a questa tecnica posso gestire la tempistica dei messaggi che ciascun personaggio recita.

Creare la scena

Prepariamo la scena inserendo lo sfondo e gli sprite necessari.

sfondo Natale

Scuriamo un pò il paesaggio utilizzando il riempimento.

Dopo inseriamo gli sprite:

Avery, Dani, Star e Heart.

Poi duplichiamo Dani altre due volte e ogni volta scegliamo un costume diverso.

sprite scratch

Aggiungiamo un’animazione alla stella prima di duplicarla.

Clicchiamo sullo sprite stella e lo rimpiccioliamo, scegliendo come dimensione 40.

Dopo clicchiamo su costumi. Quindi con il tasto destro scegliamo duplica in modo da ottenere un secondo costume che poi andremo a modificare, come da figura sotto.

star scratch

Modifichiamo dunque la seconda stella semplicemente ruotandola di poco, tramite la freccia di rotazione che compare in basso dopo averla selezionata, come da figura sotto.

stella scratch

Quindi inseriamo il seguente codice per creare una semplice animazione.

Innanzitutto scegliamo quando si clicca sulla bandierina verde e poi inseriamo subito dopo un ciclo per sempre. All’interno del ciclo ripetiamo le seguenti istruzioni:

1. Passa al costume star

2. Attendi 0.5 secondi

3. Passa al costume star2

4. Attendi 0.5 secondi

Come da figura sotto:

coding con scratch

Adesso duplicate le stelle quante volte desiderate.

Svilupperemo il resto del codice gestendo i messaggi.

Quindi facciamo parlare per prima Avery che, dopo un messaggio introduttivo, invia a tutti messaggio1, che rappresenta il via per un altro sprite.

Infatti facciamo partire Dani3 (scegliete pure uno sprite qualunque dal quale iniziare la poesia) quando riceverà messaggio1.

Dani3 una volta terminato il messaggio a sua volta invia a tutti messaggio2 che viene intercettato da un altro sprite, ad esempio Dani2 che farà lo stesso dopo aver terminato di recitare.

Codice Personaggi

Ecco dunque di seguito il codice di ciascun personaggio. Partiamo da Avery:

codice su Avery

Il codice su Dani:

codice su Dani1

Codice su Dani2:

codice su Dani2

Codice su Dani3:

codice su Dani3

Abbiamo inserito il codice nascondi perché al termine facciamo apparire un cuore che a mano a mano si ingrandirà nascondendo i personaggi.

Ecco il codice sul cuore:

cuore coding

Infine creiamo un sottofondo musicale aggiungendo la musica ciclicamente nello sfondo.

suono

Abbiamo sviluppato un semplice esempio di coding con Scratch con il tema del Natale.

Alcuni link utili

Indice tutorial Scratch 3.0

Indice argomenti Scratch 2.0

Numeri primi in Scratch

Massimo fra tre numeri in Scratch

Minimo tra 3 numeri in Scratch

Numeri perfetti con Algobuild

Numeri amicabili

Selecion sort in Scratch

Esempio di successione di Fibonacci con Algobuild

La successione di Fibonacci in C++

Scratch esempi di programmazione

Scratch esempi di programmazione

In questa lezione su Scratch esempi di programmazione ci eserciteremo con l’istruzione di selezione e le animazioni dello sfondo e dello sprite.

Scratch esempi di programmazione

Data una temperatura T, visualizzare se si tratta di una temperatura: “sotto zero”, “zero” oppure “sopra lo zero”.

Oltre a realizzare l’algoritmo creiamo anche una semplice animazione con gli sfondi e i costumi dello sprite scelto.

Quindi innanzitutto scegliamo quattro sfondi in Scratch a piacere.

Ad esempio io ho scelto: Blue Sky, Artic, Boardwalk e Slopes.

Aggiungeteli uno alla volta cliccando sull’icona in basso a destra come da figura:

sfondo Scratch esempi di programmazione

Dopo averli inseriti cliccate sulla linguetta sfondi in alto a sinistra:

sfondi scratch

Dovreste avere questi 4 sfondi come da figura (se è presente lo sfondo bianco cancellatelo).

Dopo scegliamo uno sprite con dei costumi in modo da poterli cambiare durante l’esecuzione del nostro semplice programma. Io ad esempio ho scelto Giga.

giga scratch


Scratch esempi di programmazione – Sviluppo del codice

Adesso cominciamo ad aggiungere i nostri blocchi allo sprite selezionato.

1. Innanzitutto inseriamo il blocco quando si clicca sulla bandierina verde.

2. Dopo impostiamo il costume e lo sfondo di partenza. Quindi andiamo su Aspetto e scegliamo passa al costume giga-b e anche passa allo sfondo Blue Sky.

3. Dopo chiediamo in input la temperatura e la memorizziamo nella variabile temperatura.

4. Adesso facciamo i confronti. Andiamo dunque su controllo e scegliamo il blocco se allora altrimenti.

5. All’interno dello spazio vuoto trasciniamo il blocco esagonale con il simbolo maggiore e impostiamo la prima condizione: temperatura maggiore di 0. Se la condizione è vera allora scegliamo di fare le seguenti operazioni:

– andiamo su Aspetto e innanzitutto scegliamo il blocco dire per visualizzare in output il messaggio ‘la temperatura è maggiore di 0 ‘. Dopo cambiamo il costume a giga-c e infine passiamo allo sfondo Boardwalk.

Se invece la condizione è falsa allora controlliamo con un altro blocco se allora altrimenti che la temperatura sia minore di zero e se tale condizione è vera:

– andiamo su Aspetto e scegliamo il blocco dire per visualizzare in output il messaggio ‘la temperatura è minore di 0 ‘. Dopo cambiamo il costume a giga-d e infine passiamo allo sfondo Artic.

Altrimenti, l’unica opzione rimasta è che la temperatura sia uguale a zero. Facciamo senza ad inserire dunque un altro se e invece eseguiamo le seguenti operazioni:

– andiamo su Aspetto e scegliamo il  blocco dire per visualizzare in output il messaggio ‘la temperatura è uguale a 0 ‘. Dopo cambiamo il costume a giga-a e infine passiamo allo sfondo Slopes.

6. Inseriamo il blocco Ferma tutto.

 

temperatura scratch

In questa sezione ‘Scratch esempi di programmazione’ abbiamo affrontato un semplice esempio.

Alcuni link utili

Indice tutorial Scratch 3.0

Indice argomenti Scratch 2.0

Numeri primi in Scratch

Massimo fra tre numeri in Scratch

Minimo tra 3 numeri in Scratch

Numeri perfetti con Algobuild

Numeri amicabili

Selecion sort in Scratch

Esempio di successione di Fibonacci con Algobuild

La successione di Fibonacci in C++

Sviluppo con Algobuild della successione di Fibonacci