Ce tutoriel python vous montre comment trouver les diviseurs d’un entier.
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
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é.
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.
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.
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.
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.
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.
Voici une série d’exercices conçus pour perfectionner vos compétences Excel. Les corrigés sont inclus pour…
Excel offre plusieurs méthodes pour calculer une moyenne tout en tenant compte des filtres ou…
Excel propose plusieurs fonctions pour insérer ou manipuler la date actuelle. Voici les principales méthodes…
Lorsque des nombres sont stockés sous forme de texte dans Excel, ils ne peuvent pas…
Extraire uniquement les chiffres d'une cellule contenant du texte et des nombres mélangés est une…
Pour supprimer plusieurs caractères spécifiques (par exemple, des symboles, chiffres ou lettres indésirables) dans des…
This website uses cookies.
View Comments
J'aime ça