In questa lezione svilupperemo un algoritmo sui numeri divisibili utilizzando Scratch 3.
Dato un numero intero N, stabilire se è divisibile per A.
Per risolvere questo algoritmo utilizzeremo le istruzioni di selezione e la funzione resto, così come nell’esempio precedente sui numeri pari.
Quindi procediamo in questo modo:
Se N/A dà resto 0 allora il numero N è divisibile per A, altrimenti il numero non è divisibile per A.
Numeri divisibili in 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 le variabili di nome N ed A, 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 N a.
5 – Inseriamo il blocco risposta che si trova nella sezione sensori.
6 – Ripetiamo i passi 4 e 5 per la variabile A.
7 – Andiamo su controllo e scegliamo il blocco se allora altrimenti.
8 – Operatori: trasciniamo il blocco con il simbolo = e trasciniamo all’interno il blocco resto della divisione di … diviso …
9 – Andiamo su variabili e trasciniamo N ed A negli spazi vuoti.
10 – Andiamo su dire e se il resto è zero allora visualizziamo in output il messaggio: ‘Il numero è divisibile‘.
11 – Sempre su dire, se il resto è diverso zero allora visualizziamo in output il messaggio: ‘Il numero non è divisibile‘.
12 – Fine: andiamo su controllo e scegliamo ferma tutto.
Ecco il codice completo:
Ecco il codice in linguaggio C++ sui numeri divisibili, per chi volesse consultarlo.
#include <iostream>
using namespace std;
int main() {
int N,A;
cout<<"Inserisci N: ";
cin>>N;
cout<<"Inserisci A: ";
cin>>A;
if(N%A==0)
cout<<"Il numero e' divisibile "<<endl;
else
cout<<"Il numero non e' divisibile "<<endl;
return 0;
}
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++