In questa lezione impareremo a sviluppare un programma in scratch per i numeri pari e dispari.
Quindi ecco il problema da risolvere:
Dato un numero intero n, stabilire se è pari o dispari.
Per risolvere questo algoritmo utilizzeremo la funzione resto che ci consente di trovare il resto della divisione.
Dunque per vedere se un numero è pari basterà controllare se il resto della divisione di un numero per due è uguale a zero.
Facciamo subito degli esempi:
Consideriamo dapprima il numero 16 e lo dividiamo per 2.
16/2 = 8 resto 0
Adesso consideriamo il numero 15:
15/2 = 7 resto 1
Quindi, da ciò si evince che 16 è un numero pari mentre 15 è un numero dispari.
Algoritmo per i numeri pari e dispari con Scratch
Sviluppiamo adesso l’algoritmo utilizzando Scratch.
1 – Inizio: andiamo su situazioni e scegliamo quando si clicca sulla bandiera verde.
2 – Andiamo su sensori e scegliamo il blocco chiedi ‘Come ti chiami?’ e attendi. Sostituiamo al posto di Come ti chiami? il testo Inserisci il numero.
3 – Andiamo su variabili e creiamo la variabile di nome numero, lasciando l’opzione per tutti gli sprite. (Per creare una nuova variabile vi ricordo il tutorial: variabili in Scratch 3.0)
4 -Trasciniamo il blocco porta numero a.
5 – Inseriamo il blocco risposta che si trova nella sezione sensori.
6 – Andiamo su controllo e scegliamo il blocco se allora altrimenti.
7 – Operatori: trasciniamo il blocco con il simbolo = e trasciniamo all’interno il blocco resto della divisione di … diviso …
8 – Andiamo su variabili e trasciniamo numero all’interno del blocco resto della divisione di ….
9 – Inseriamo 2 sempre all’interno del blocco, dopo diviso, perché dobbiamo trovare il resto della divisione per 2 e inseriamo 0 dopo l’uguale.
10 – Andiamo su dire e se il resto è zero allora visualizziamo in output il messaggio: ‘Il numero è pari‘.
11 – Sempre su dire, se il resto è diverso zero allora visualizziamo in output il messaggio: ‘Il numero è dispari‘.
12 – Fine: andiamo su controllo e scegliamo ferma tutto.
Ecco il codice completo:
Sviluppiamo il programma per i numeri pari e dispari anche in linguaggio C++, per chi volesse vedere l’analogia con i linguaggi di programmazione.
#include <iostream>
using namespace std;
int main() {
int numero;
cout<<"Numero: ";
cin>>numero;
if(numero%2==0)
cout<<"Il numero e' pari "<<endl;
else
cout<<"Il numero e' dispari "<<endl;
return 0;
}
Notate come venga utilizzato l’operatore % per indicare il resto della divisone.
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++