In questa lezione faremo la somma di 5 numeri in Scratch. Utilizzeremo varie soluzioni per confrontare le varie istruzioni di Scratch.
Algoritmo sequenziale per la somma di 5 numeri
Il primo metodo, molto semplice, utilizza una struttura sequenziale, ma non è il più corretto, specie se si devono sommare grandi quantità di numeri.
Come potete vedere in questo caso ci vogliono 5 variabili per i numeri, più la variabile somma. Ben 6 variabili.
Pensate nel caso in cui vogliate sommare 10, 100, 1000 numeri. Chiaramente servirebbero tantissime variabili e l’algoritmo sarebbe molto lungo.
Seconda soluzione con i cicli
Allora ci vengono in aiuto le strutture cicliche che servono appositamente a ripetere un blocco di istruzioni.
In questo caso il blocco da ripetere è:
chiedere il numero, portarlo a risposta;
incrementare la somma del numero inserito.
Dato che dobbiamo sommare 5 numeri, dentro il ciclo ripeti … volte inserisco proprio 5.
Le variabili che servono sono solo due:
numero che contiene di volta in volta il nuovo numero inserito;
somma il cui valore cambia ad ogni numero inserito.
Ecco dunque l’algoritmo con l’istruzione ripeti 5 volte.
Notate che la variabile somma va inizializzata a zero.
Il motivo è semplice:
se somma=0, la prima volta che si esegue questa istruzione:
somma=somma+numero
si avrà: somma=0+numero
0 infatti è l’elemento neutro della somma e quindi il risultato non cambia!
Se invece la somma non fosse inizializzata a zero si avrebbe:
somma=valore non definito + numero.
Quindi non dimentichiamoci di inizializzare il valore della somma a 0.
Terzo metodo per la somma di 5 numeri
Infine, nel terzo metodo, per effettuare la somma di 5 numeri in Scratch 3, utilizzo l’istruzione ripeti fino a quando.
Questa istruzione permette di ripetere il ciclo fino a quando non si verifica la condizione che è inserita all’interno dell’esagono.
Utilizziamo una variabile contatore che ha il compito di contare quanti numeri a mano a mano si inseriscono.
Dunque inserisco il primo numero e la variabile conta diventa 1, poi inserisco il secondo numero e conta diventa 2, e così via.
Quindi la variabile conta parte da zero e si incrementa di 1 per ogni numero inserito.
La condizione, nel caso della somma dei 5 numeri, che possiamo inserire all’interno del ciclo ripeti fino a quando, è questa: conta=5.
In questo modo l’algoritmo chiede di inserire i numeri finché la condizione conta=5 è falsa. Quando si verifica la condizione, si esce fuori dal ciclo e si stampa la somma.
Ecco dunque il codice a blocchi completo per l’algoritmo della somma di 5 numeri in Scratch.
Alcuni link utili
Massimo fra tre numeri in Scratch
Minimo tra 3 numeri in Scratch
Esempio di successione di Fibonacci con Algobuild
La successione di Fibonacci in C++
Buonasera. Trovo molto utile il vostro sito.
Vorrei porre un quesito: perché quando voglio aggiungere(nello stesso schema) ad esempio una sottrazione fra più numeri poi una moltiplicazione ancora dopo trovo problemi? Quando ho svolto l’esercizio “somma fra 2 numeri” ho fatto la somma, poi ho aggiunto una sottrazione e dopo una moltiplicazione. Senbra che non mi “azzeri” in numeri precedenti.
Grazie.
Se vuole azzerare il tutto, deve rimettere la variabile somma = 0, altrimenti conserva il valore precedente.