Proponiamo in questo articolo alcuni semplici esercizi con Scratch che possono essere proposti agli alunni della scuola primaria e della scuola secondaria.
Esercizio 1 con Scratch
Cinque ragazzi vanno al cinema approfittando della seguente promozione: ogni 5 persone un biglietto è gratis (quindi pagheranno solo 4 biglietti). Ogni biglietto ha il costo di 8 €. I ragazzi divideranno tra loro la spesa in modo equo. Quanto pagherà ciascun ragazzo?
Procedimento esercizio 1 con Scratch
Scegliamo uno sfondo e uno sprite a piacere:
Impostiamo l’esercizio prendendo i valori costanti del prezzo e del numero dei ragazzi e chiedendo all’utente quale sarà il prezzo finale. La risposta dell’utente viene memorizzata in una variabile.
Ho bisogno di creare quindi le seguenti variabili:
prezzo – la costante che conterrà il prezzo; e dopo aver effettuato il calcolo conterrà il prezzo da pagare (faccio senza a creare un’altra variabile, infatti è bene non crearne di nuove se non sono necessarie).
ragazzi – la costante che conterrà il numero dei ragazzi;
soluzione – è la variabile che conterrà la soluzione proposta dall’utente.
Innanzitutto settiamo i due valori costanti:
prezzo=8
ragazzi=5
Dopo calcoliamo il prezzo facendo semplicemente questo calcolo:
prezzo=prezzo*(ragazzi-1).
Poi, per calcolare quanto pagherà ciascun ragazzo, facciamo questa operazione:
prezzo=prezzo/ragazzi.
Quindi chiedo all’utente di inserire la risposta e la memorizzo nella variabile soluzione.
Infine confronto la soluzione che l’utente ha dato con il prezzo trovato dal programma. Se i due valori coincidono allora farò apparire il messaggio: “Hai detto giusto”; altrimenti dò il messaggio: “Hai sbagliato” .
Ecco lo script completo dell’esercizio con Scratch:
Questo è uno dei due esercizi con Scratch che volevo presentarvi oggi.
Esercizio 2
Alcuni ragazzi vanno al cinema approfittando della seguente promozione: ogni 5 persone un biglietto è gratis. Ogni biglietto ha il costo di 8 €. I ragazzi divideranno tra loro la spesa in modo equo. Quanto pagherà ciascun ragazzo?
Procedimento esercizio 2 con Scratch
Il problema rispetto a prima cambia molto, in quanto adesso il numero dei ragazzi che vanno al cinema è una variabile.
Questa volta quanto pagherà ciascun ragazzo lo dirà il programma direttamente, non lo chiederà all’utente.
Quindi ho bisogno di queste variabili:
prezzo – la costante che conterrà il prezzo; e dopo aver effettuato il calcolo conterrà il prezzo da pagare.
ragazzi – la variabile che conterrà il numero dei ragazzi (nell’esercizio prima invece era una costante);
q – è la variabile che conterrà il numero di ragazzi da sottrarre per effettuare il calcolo.
Come prima memorizzo il prezzo di 8 euro nella costante.
Dopo chiedo quanti ragazzi vogliono entrare al cinema e confronto se il numero è maggiore o uguale a 5. Se è vero divido il numero di ragazzi per 5 e poi arrotondo all’intero inferiore, questo calcolo serve a trovare il numero dei ragazzi che non pagano.
Infatti se ad esempio i ragazzi fossero 10:
10/5=2 quindi due sono i ragazzi che non pagherebbero.
Se invece i ragazzi fossero ad esempio 11:
11/5=2,2 arrotondo comunque a 2 e quindi sono sempre 2 i ragazzi che non pagherebbero .
Poi sottraggo la quantità al numero totali dei ragazzi:
q=ragazzi-q.
Quindi q mi rappresenta la quantità dei ragazzi paganti.
Calcolo il prezzo finale come prodotto di prezzo per la quantità così ottenuta e per trovare la spesa di ciascuno divido per il numero iniziale di ragazzi.
Potevo fare tutto anche in un unico calcolo:
prezzo=prezzo*q/ragazzi.
Dopo per ottenere il numero arrotondato, arrotondo il risultato del prodotto tra il prezzo e 100 e poi calcolo prezzo/100 per ottenere così il numero con due cifre decimali.
Infine visualizzo in output quanto pagherà ciascun ragazzo.
Ecco lo script completo.
Questi sono alcuni semplici esercizi con Scratch da poter proporre a scuola.
Quindi ecco l’algoritmo completo per il calcolo del quoziente di potenze con la stessa base con Scratch.
Chiaramente si potrebbero aggiungere tanti controlli sull’input. Questo esercizio, infatti, vuole essere solo un punto di partenza, per la realizzazione dell’algoritmo.
Oggi studieremo come affrontare le frazioni con Scratch.
Partiamo dalla definizione di frazione
Una frazione non è altro che un numero scritto sotto forma di divisione.
Le frazioni possono essere:
proprie: sono quelle in cui il numeratore è più piccolo del denominatore, ad esempio 1/2 oppure 3/5 o ancora 8/12 ecc…
improprie: sono quelle in cui il numeratore è più grande del denominatore, ad esempio 4/3 oppure 5/2 o ancora 12/8 ecc…
apparenti: sono quelle in cui il numeratore è uguale al denominatore o è un suo multiplo, ad esempio 4/4 oppure 10/5, ecc…
Realizziamo allora un semplice script in Scratch che mi permetta di verificarlo.
Script per il calcolo delle frazioni con Scratch
Per prima cosa inseriamo uno sfondo e uno sprite qualunque.
Io ad esempio ho scelto questo:
Questo sprite ha tanti costumi, quindi ci divertiremo a farglielo cambiare.
Chiediamo il numeratore e il denominatore e memorizziamo il loro valore nelle variabili appositamente create di nome num e dem (ho scelto questi nomi per semplicità, potevo inserire qualsiasi altro nome).
Poi calcoliamo il risultato della divisione (num/den) e lo memorizziamo in una variabile che chiameremo frazione.
Inoltre lo script, facendo un controllo sul numeratore e denominatore, mi dirà se la frazione è propria, impropria o apparente.
Infatti, se num<den la frazione è propria, se num> den la frazione è impropria se num=den oppure se num è multiplo di den la frazione è apparente.
Come si fa a vedere se un numero è multiplo di un altro? Semplice, in questo caso, basterà controllare il resto della divisione di num diviso den. Se è zero vuol dire che è un multiplo, altrimenti non lo è.
Ad esempio 15 è multiplo di 3. Infatti 15/3=5 con resto zero. Invece 15 non è multiplo di 2. Infatti 15/2=7 resto 1.
Allego lo script sotto:
Frazioni Complementari
Due frazioni si dicono complementari se sommate tra loro formano un intero. Ad esempio, 1/4 ha come frazione complementare 3/4 perchè la somma delle due frazioni dà 1.
Realizziamo uno script in scratch che calcoli la frazione complementare di una frazione data in input.
Prendiamo numeratore e denominatore in input e memorizziamo i loro valori nelle variabili num e den.
Facciamo anche il controllo che consentirà di effettuare il calcolo solo se il valore della variabile num è minore della variabile den, altrimenti darà il messaggio: “frazione impropria”.
Per calcolare la frazione complementare consideriamo che il numeratore della prima frazione + il numeratore della seconda frazione deve essere uguale al denominatore. Quindi num+num1=den
Da qui mi ricavo che mum1=den-num
In questo script mi diverto a far cambiare costume allo sprite.
Script per il calcolo delle frazioni complementari con Scratch
Frazioni equivalenti
Una frazione equivalente si ottiene moltiplicando o dividendo per uno stesso numero, diverso da zero, sia il numeratore che il denominatore di una frazione.
Al solito inseriamo numeratore e denominatore e li memorizziamo nelle variabili num e den.
Quindi per verificare che la seconda frazione, che inseriremo tramite le variabili num1 e den1, è equivalente alla prima, basterà vedere se le due divisioni sono uguali, ovvero:
num/den=num1/den1
Se è vero il programma mi dirà che le due frazioni sono equivalenti, altrimenti mi dirà che non lo sono.
Script per il calcolo delle frazioni equivalenti in Scratch.
Potrei anche trovare un modo per far visualizzare la frazione data in input.
Io l’ho pensata così:
Ho modificato lo script inserendo un invio messaggio:
Ho creato un altro sprite e ho inserito questi comandi:
Divertitevi pure come volete a creare variazioni allo script. Se volete scrivete sotto nei messaggi le vostre considerazioni.
In questo articolo affronteremo le potenze con Scratch.
Le potenze si indicano in questo modo:
an dove a è labase ed n è l’esponente.
Le potenze sono delle moltiplicazioni ripetute, quindi an è uguale ad a*a*a…*a eseguito n volte.
Facciamo degli esempi.
23 è uguale a 2*2*2, cioè 2 moltiplicato per se stesso 3 volte.
35 è uguale a 3*3*3*3*3, cioè 3 moltiplicato per se stesso 5 volte.
In particolare avremo:
a0 è uguale a 1 se a è diverso da zero.
a0 è non definito se a è uguale a zero (00).
0n con n diverso da zero è uguale a zero.
Algoritmo per calcolare le potenze con Scratch
Innanzitutto scegliamo uno sfondo e uno sprite.
Io ho scelto questi:
Poi creiamo le variabili necessarie, cioè la base, l’esponente e la potenza che è la variabile che conterrà il risultato delle operazioni.
Adesso non ci resta che calcolare l’algoritmo per il calcolo delle potenze con Scratch.
Teniamo conto di quanto detto sopra e quindi consideriamo i casi particolari:
Se la base e l’esponente sono uguali a zero, allora si avrà il messaggio in output: la potenza non è definita.
Se solo la base è uguale a zero, allora la potenza sarà sempre zero.
Invece, se nessuna delle condizioni è verificata passiamo al calcolo della potenza. Come? Con il metodo delle moltiplicazioni ripetute.
Portiamo la variabile potenza uguale a 1 e poi ripetiamo tante volte quanto è l’esponente la moltiplicazione del numero per se stesso.
Facciamo un esempio, prendendo in considerazione 23.
Quindi il ciclo si ripeterà 3 volte e i passaggi saranno questi:
Prima iterazione potenza=potenza *base=1*2=2
Seconda iterazione potenza=potenza*base=2*2=4
Terza iterazione potenza=potenza*base=4*2=8
Infine mi dirà il risultato.
Ecco l’algoritmo completo per il calcolo della potenza con scratch.
Ma attenzione se l’esponente è negativo?
Algoritmo per calcolare la potenza con Scratch nel caso in cui l’esponente è negativo
Per calcolare questo algoritmo teniamo conto che, se eleviamo a potenza con un numero negativo allora il risultato sarà dato dal reciproco della base con l’esponente cambiato di segno.
Facciamo degli esempi:
2-1 è uguale a 1/2 ovvero 0,5.
2-2 è uguale a 1/4 ovvero 0,25.
Quindi facciamo questa operazione: se l’esponente è negativo lo trasformiamo in positivo. Dopo con il ciclo lo moltiplichiamo tante volte quanto è l’esponente e infine portiamo la variabile potenza a 1 diviso il numero generato dal ciclo.
Allego lo script completo del programma per il calcolo delle potenze con scratch.
Bene e se l’esponenete fosse irrazionale?
Predisponiamo l’algoritmo che semplicemente ci avvisa che non è predisposto per il calcolo delle potenze con esponente irrazionale.
Algoritmo per calcolare la potenza con scratch nel caso in cui l’esponente è irrazionale
Realizziamo un blocco che chiameremo ad esempio controlla_intero. Quindi se ad esempio inseriamo come esponente 3.4 sarà in grado di dirmi che non è un numero intero.
Come realizziamo il blocco? Scorriamo tutto il numero con un indice i che controlla se è presente il punto da qualche parte.
In questo modo:
Adesso modifichiamo il codice di prima, inserendo semplicemente il richiamo al blocco in questo punto:
Commenti recenti