Zoofast.fr: votre source fiable pour des réponses précises et rapides. Découvrez des informations complètes et précises sur n'importe quel sujet grâce à notre plateforme de questions-réponses bien informée.

Bonjour ! Je suis en 2nd et j'ai besoin d'aide pour un dm pour la rentrée ! J'ai déjà demandé pour la 1er partie mais la 2e partie est tout aussi compliquée ! Pourriez vous m'aidez s'il vous plaît ?

Bonjour Je Suis En 2nd Et Jai Besoin Daide Pour Un Dm Pour La Rentrée Jai Déjà Demandé Pour La 1er Partie Mais La 2e Partie Est Tout Aussi Compliquée Pourriez V class=

Sagot :

Réponse :

Bonjour,

Un nombre premier a pour seuls diviseurs 1 et lui-même.

Les autres nombres peuvent en avoir bien plus.

Ceux de 18 sont :

1, 2, 3, 6, 9, 18

Le nombre 840 en a plus de 30.

On s'intéresse aux diviseurs d'un nombre et à l'aide apportée par l'ordinateur et en particulier un logiciel de programmation, ici Python.

A priori rien de compliqué.

Première ligne : instruction def, une façon de définir le nom du programme qui s'appelle pour info listediviseurs. Ce programme une fois utilisé va nous demander un nombre entier naturel non nul pour chercher ses diviseurs.

Comment ? On ne sait pas encore, mais la seconde ligne indique une variable l qui est une liste, vide pour le moment.

La commande l=l+[k] dit que la liste devient augmentée de l'élément k (qui arrive lui aussi sous la forme d'une liste avec un seul élément). En clair, la valeur de k (qui est identifiée diviseur du nombre de départ) est versée à la liste l.

>>> listediviseurs(972)

Liste des diviseurs de 972 : [1, 2, 3, 4, 6, 9, 12, 18, 27, 36, 54, 81, 108, 162, 243, 324, 486, 972]

>>> listediviseurs(34085)

Liste des diviseurs de 34085 : [1, 5, 17, 85, 401, 2005, 6817, 34085]

>>> listediviseurs(47363)

Liste des diviseurs de 47363 : [1, 47363])

>>>

Pour le mécanisme de calcul, on prend un nombre N, par exemple 12.

On teste les divisions euclidiennes suivantes et si le reste vaut 0, cela signifie qu'on est en présence d'un diviseur de 12 et on l'ajoute à la liste pour affichage final :

12/1  ? 12 = 1 x 12 + 0 diviseur trouvé

12/2 ? 12 =  2 x 6 + 0 diviseur trouvé

12/3 ? 12 = 3 x 4 + 0 diviseur trouvé

12/4 ? 12 = 4 x 3 + 0 diviseur trouvé

12/5 ? 12 = 2 x 5 + 2

12/6 ? 12 = 6 x 2 + 0 diviseur trouvé

12/7 ? 12 = 7 x 1 + 5

12/8 ? 12 = 8 x 1 + 4

12/9 ? 12 = 9 x 1 + 3

12/10 ? 12 = 10 x 1 + 2

12/11 ? 12 = 11 x 1 + 1

12/12 ? 12 = 12 x 1 + 0 diviseur trouvé

Et progressivement la liste vide va contenir les 6 diviseurs de 12.

[1]

[1, 2]

[1, 2, 3]

[1, 2, 3, 4]

[1, 2, 3, 4, 6]

[1, 2, 3, 4, 6, 12]

La mécanique du calcul est très simple.