Document

publicité
Nombres parfaits
Un nombre est parfait si il est égal à la somme de ses diviseurs
propres.1
6 est un nombre parfait car les diviseurs propres de 6 sont {1,2,3} et 1+2+3=6
1. Création de la liste des diviseurs d’un nombre.
Une liste ?
Dans scratch, une liste permet de stocker plusieurs informations.
L’avantage d’une liste est de ne pas avoir à définir à l’avance sa taille : on dit que
c’est un tableau dynamique.
À chaque nouvelle information, une nouvelle « cellule » est créée.
On a un bloc longueur de la liste qui permet de connaître la longueur de la liste à
un moment donné.
On a créé ici une liste appelée diviseurs.
On a des blocs « actions » pour :
•
Ajouter une donnée,
•
supprimer une donnée,
•
insérer une donnée,
•
remplacer une donnée,
•
montrer la liste,
•
cacher la liste.
On a des blocs « informations » :
•
Nom de la liste,
•
élément de la liste,
•
longueur de la liste.
On a un bloc « condition » :
•
1Autre
liste contient élément.
que lui-même
NOMBRES PARFAITS
!1
On met quoi dans la liste?
Un petit rappel : « b est un diviseur de a si le reste de la division de a par b est 0 ».
Juste par hasard, n’y aurait il pas un bloc reste de la division ?
a modulo b « stocke » la valeur du reste de la division de a par b.
En résumé :
•
On demande le nombre dont on veut savoir s’il est parfait. Il sera donc stocké
dans la variable « réponse ».
•
On va créer une liste qui contient tous ses diviseurs :
•
On va utiliser une boucle conditionnelle répéter jusque, qui contient une
instruction conditionnelle :
•
•
Condition : a modulo b = 0
•
Action : ajouter le diviseur à la liste.
On va avoir également besoin d’une variable temporaire que l’on va
nommer temp. Cette variable va prendre les valeurs inférieures au
nombre « réponse » et permettre de tester s’ils divisent le nombre
« réponse ».
2. Somme des diviseurs.
On va créé une variable somme qui va stocker la somme des diviseurs, c’est-à-dire
la somme des éléments de la liste diviseurs.
3. Conclusion.
Reste une instruction conditionnelle Si…Alors…Sinon qui va permettre de
conclure.
4. Pour aller plus loin
Crée la liste des nombres parfaits inférieurs à 1000.
NOMBRES PARFAITS
!2
Téléchargement