Tutoriel python : code pour trouver les diviseurs d’un entier

Ce tutoriel python vous montre comment trouver les diviseurs d’un entier.

Contexte

Voici notre série d’articles de programmation python dans lesquels nous résolvons des problèmes mathématiques à l’aide de l’interpréteur python. Si vous êtes intéressé par d’autres problèmes mathématiques résolus avec python, essayez de jeter un œil à nos articles précédents. Cet article traitera de la recherche des diviseurs d’un nombre, un problème commun aux programmeurs. Ce défi revêt une importance mathématique et trouve des applications en cryptographie.

Pour trouver les diviseurs d’un nombre N, nous utiliserons une méthode de vérification directe en testant tous les nombres plus petits que N pour leur divisibilité. Nous allons donc commencer, comme d’habitude, par les définitions mathématiques nécessaires à la résolution du problème.
En savoir plus sur problème

Qu’est-ce qu’un diviseur ? Comment vérifier si un nombre est diviseur d’un autre nombre ?

Avant de l’implémenter, la connaissance préalable est essentielle. Ce mantra révèle sa vérité : même si vous êtes un programmeur exceptionnel, l’absence de compétences logiques, déductives et mathématiques vous empêchera de réaliser des tâches telles que la création d’un programme pour déterminer les diviseurs d’un nombre donné.

La définition du diviseur est assez simple et s’applique à tous les entiers. Elle est là:

Un entier b est un diviseur d’un entier a s’il existe un entier c tel que a = b⋅c

Cependant, nous pouvons donner une définition plus “opérationnelle”, qui nous fournit en même temps un outil de vérification immédiat (et que nous utiliserons dans notre code python).

Étant donné deux entiers a et b, avec b ≠ 0, on a que b est un diviseur de a si le reste de la division a : b est nul.

En notation mathématique, on peut représenter les diviseurs d’un entier “n” de la manière suivante :

Si “d” est un diviseur de “n”, cela s’exprime comme : d | n

Cela signifie que “d” divise “n” sans laisser de reste. En d’autres termes, “n” est divisible par “d” et la division “n ÷ d” donne un quotient entier.

Par exemple, pour l’entier 12, les diviseurs sont représentés comme suit :
1 | 12 (car 1 divise 12 sans reste)
2 | 12 (car 2 divise 12 sans reste)
3 | 12 (car 3 divise 12 sans reste)
4 | 12 (car 4 divise 12 sans reste)
6 | 12 (car 6 divise 12 sans reste)
12 | 12 (car 12 divise 12 sans reste)

Cette notation aide à décrire formellement la relation de divisibilité entre les nombres et à identifier tous les diviseurs d’un entier donné.

Programme pour trouver tous les diviseurs d’un entier en langage python


Dès que nous connaissons la définition de diviseur, il est facile d’écrire un programme qui nous permettra de trouver tous les diviseurs d’un entier en un rien de temps. Comme d’habitude, nous vous recommandons de lire l’intégralité de l’explication pour comprendre chaque ligne de code et les étapes de base. Cependant, vous pouvez passer au bas de l’article pour télécharger le code complet.

Lire un entier du clavier en python

Pour lire un entier à partir du clavier en Python, vous pouvez utiliser la méthode input() par défaut de Python. Consultez l’article lié pour des explications plus détaillées sur cette méthode.

Bien sûr, voici le code sans les commentaires :

entier = int(input("Veuillez entrer un entier : "))
print("Vous avez saisi :", entier)

Ce code permet à l’utilisateur d’entrer un entier, puis l’affiche à l’écran.

Code Python pour lire un entier

Avec la ligne de code ci-dessus, l’interpréteur python lira une entrée au clavier et la convertira en entier avec la méthode int (). La valeur entière est stockée dans la variable « nombre », qui contient donc l’entier dont on souhaite identifier tous les diviseurs.

Remarque : en tant que bon programmeur, vous devez implémenter des lignes de contrôle dans votre code pour vérifier que, en fait, l’utilisateur a saisi un nombre supérieur à zéro. Par souci de simplicité, nous omettons cette vérification dans ce code.

Trouver tous les diviseurs d’un entier en python


Nous choisissons d’écrire un programme python qui imprime tous les diviseurs de l’entier entré par l’utilisateur à l’écran. Alternativement, les numéros pourraient être stockés dans une liste pour une utilisation ultérieure. Si vous êtes intéressé par cette variante ou d’autres variantes du programme, essayez de laisser un commentaire ci-dessous et je vous fournirai des explications alternatives. Continuons donc avec ce que nous avions prévu de faire, c’est-à-dire d’imprimer à l’écran tous les intercalaires du “nombre” lu au clavier. Vous trouverez ci-dessous le code python dont vous avez besoin.

Code Python pour afficher tous les diviseurs d’un entier donné à l’écran

Reconsidérons les opérations dans les trois lignes de code. D’abord, créons une boucle for parcourant les nombres de 1 à “number” inclus, en utilisant “range(1, number + 1)”.

La construction if est utilisée pour appliquer le contrôle sur le nombre. En fait, nous savons d’après la définition opératoire donnée ci-dessus que, si la division donne le reste zéro, alors “i” est un diviseur de “nombre”. L’opération%, en fait, ne représente pas le pourcentage mais est une opération python qui renvoie exactement le reste de la division entière. La condition du si sert donc à vérifier que le reste est exactement nul.

La dernière ligne affiche simplement le chiffre “i” à l’écran, en cas de vérification réussie.

Code complet en python pour lire un entier et imprimer tous ses diviseurs à l’écran

Comme convenu, voici le code complet pour résoudre le problème initial. Il comporte deux opérations principales : la première consiste à lire un numéro depuis le clavier, tandis que la seconde parcourt tous les entiers de 1 jusqu’à ce numéro pour afficher les diviseurs à l’écran.

Exemple de code :

# Lire un numéro depuis le clavier
num = int(input("Entrez un numéro : "))

# Afficher tous les diviseurs de num
for i in range(1, num + 1):
    if num % i == 0:
        print(i)

Ce code permet de trouver et d’afficher tous les diviseurs du nombre saisi par l’utilisateur.


Autres articles

Calcul de Puissance en C Sans pow()...
Le calcul de puissance est une opération courante en programmation,...
Read more
Cours : BTS Commerce International - Première...
Le commerce international est un aspect fondamental de l'économie mondiale,...
Read more
Calcul de puissance en C avec pow()...
Dans cet article, nous explorerons l'utilisation de la fonction pow()...
Read more

Une réflexion sur “Tutoriel python : code pour trouver les diviseurs d’un entier

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *