Comment vérifier si un nombre est divisible par un autre en Python

PythonPythonBeginner
Pratiquer maintenant

💡 Ce tutoriel est traduit par l'IA à partir de la version anglaise. Pour voir la version originale, vous pouvez cliquer ici

Introduction

Dans ce laboratoire (lab), vous apprendrez à vérifier si un nombre est divisible par un autre nombre en utilisant Python. Le laboratoire se concentre sur la compréhension du concept de divisibilité et sur l'application de l'opérateur modulo (%) pour déterminer si un nombre peut être divisé uniformément par un autre, sans reste.

Vous allez créer un script Python nommé divisibility.py qui montre comment utiliser l'opérateur modulo pour vérifier la divisibilité par 2, 3 et 5. En exécutant le script, vous observerez la sortie indiquant si le nombre 10 est divisible par chacun de ces nombres. Cette expérience pratique consolidera votre compréhension de la divisibilité et de l'opérateur modulo en Python.


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL python(("Python")) -.-> python/ErrorandExceptionHandlingGroup(["Error and Exception Handling"]) python(("Python")) -.-> python/BasicConceptsGroup(["Basic Concepts"]) python(("Python")) -.-> python/ControlFlowGroup(["Control Flow"]) python/BasicConceptsGroup -.-> python/numeric_types("Numeric Types") python/ControlFlowGroup -.-> python/conditional_statements("Conditional Statements") python/ControlFlowGroup -.-> python/for_loops("For Loops") python/ErrorandExceptionHandlingGroup -.-> python/catching_exceptions("Catching Exceptions") subgraph Lab Skills python/numeric_types -.-> lab-559547{{"Comment vérifier si un nombre est divisible par un autre en Python"}} python/conditional_statements -.-> lab-559547{{"Comment vérifier si un nombre est divisible par un autre en Python"}} python/for_loops -.-> lab-559547{{"Comment vérifier si un nombre est divisible par un autre en Python"}} python/catching_exceptions -.-> lab-559547{{"Comment vérifier si un nombre est divisible par un autre en Python"}} end

Apprenez-en sur la divisibilité

Dans cette étape, vous allez apprendre ce qu'est la divisibilité en mathématiques et comment elle est liée à la programmation. La divisibilité est un concept fondamental qui nous aide à comprendre si un nombre peut être divisé uniformément par un autre nombre, sans reste. Ce concept est crucial dans diverses tâches de programmation, telles que la validation de données, l'optimisation d'algorithmes, etc.

Commençons par un exemple simple. Prenons le nombre 10. Il est divisible par 2 car 10 divisé par 2 égale 5, sans reste. De même, 10 est divisible par 5 car 10 divisé par 5 égale 2, sans reste. Cependant, 10 n'est pas divisible par 3 car 10 divisé par 3 égale 3 avec un reste de 1.

En Python, nous pouvons vérifier la divisibilité en utilisant l'opérateur modulo (%). L'opérateur modulo renvoie le reste d'une division. Si le reste est 0, cela signifie que le nombre est divisible.

Pour illustrer cela, créons un script Python appelé divisibility.py dans votre répertoire ~/project en utilisant l'éditeur VS Code.

## Create a script named divisibility.py
## Open VS Code editor and create a new file named divisibility.py in ~/project directory
## Add the following content to the file

number = 10

## Check if the number is divisible by 2
if number % 2 == 0:
    print(f"{number} is divisible by 2")
else:
    print(f"{number} is not divisible by 2")

## Check if the number is divisible by 3
if number % 3 == 0:
    print(f"{number} is divisible by 3")
else:
    print(f"{number} is not divisible by 3")

## Check if the number is divisible by 5
if number % 5 == 0:
    print(f"{number} is divisible by 5")
else:
    print(f"{number} is not divisible by 5")

Maintenant, exécutons le script en utilisant l'interpréteur Python. Ouvrez votre terminal et accédez au répertoire ~/project :

cd ~/project

Ensuite, exécutez le script :

python divisibility.py

Vous devriez voir la sortie suivante :

10 is divisible by 2
10 is not divisible by 3
10 is divisible by 5

Cette sortie confirme que 10 est divisible par 2 et 5, mais pas par 3, comme nous l'avons discuté précédemment.

Comprendre la divisibilité et utiliser l'opérateur modulo sont des compétences essentielles pour tout programmeur Python. Dans les étapes suivantes, nous explorerons des applications plus avancées de ces concepts.

Utilisation de l'opérateur modulo

Dans cette étape, nous approfondirons notre connaissance de l'opérateur modulo (%) et explorerons ses diverses applications en Python. Comme vous l'avez appris dans l'étape précédente, l'opérateur modulo renvoie le reste d'une division. Cette opération apparemment simple est incroyablement polyvalente et peut être utilisée pour résoudre une grande variété de problèmes de programmation.

Un cas d'utilisation courant de l'opérateur modulo est de déterminer si un nombre est pair ou impair. Un nombre pair est divisible par 2, tandis qu'un nombre impair ne l'est pas. Nous pouvons facilement vérifier cela en utilisant l'opérateur modulo :

## Create a script named even_odd.py
## Open VS Code editor and create a new file named even_odd.py in ~/project directory
## Add the following content to the file

number = 17

if number % 2 == 0:
    print(f"{number} is even")
else:
    print(f"{number} is odd")

Enregistrez ce code sous le nom even_odd.py dans votre répertoire ~/project. Maintenant, exécutons le script :

cd ~/project
python even_odd.py

Vous devriez voir la sortie suivante :

17 is odd

Une autre application utile de l'opérateur modulo est de parcourir une séquence de nombres en boucle. Par exemple, supposons que vous vouliez attribuer différentes couleurs à une série d'éléments, et que vous n'ayez qu'un nombre limité de couleurs. Vous pouvez utiliser l'opérateur modulo pour parcourir les couleurs en boucle :

## Create a script named colors.py
## Open VS Code editor and create a new file named colors.py in ~/project directory
## Add the following content to the file

items = ["apple", "banana", "cherry", "date", "elderberry"]
colors = ["red", "yellow", "purple"]

for i, item in enumerate(items):
    color_index = i % len(colors)
    color = colors[color_index]
    print(f"{item} is {color}")

Enregistrez ce code sous le nom colors.py dans votre répertoire ~/project. Maintenant, exécutons le script :

cd ~/project
python colors.py

Vous devriez voir la sortie suivante :

apple is red
banana is yellow
cherry is purple
date is red
elderberry is yellow

Dans cet exemple, l'opérateur modulo garantit que l'index color_index reste dans les limites de la liste colors, nous permettant de parcourir les couleurs à plusieurs reprises.

L'opérateur modulo est également utile pour des tâches telles que la validation des données d'entrée, la génération de motifs et la mise en œuvre d'algorithmes cryptographiques. Au fur et à mesure de votre progression dans l'apprentissage de Python, vous trouverez de nombreuses autres façons créatives d'utiliser cet opérateur puissant.

Gérer la division par zéro

Dans cette étape, vous allez apprendre à gérer les erreurs de division par zéro en Python. La division par zéro est une erreur courante qui se produit lorsque vous essayez de diviser un nombre par zéro. En mathématiques, la division par zéro est indéfinie, et en programmation, elle entraîne généralement une erreur qui peut faire planter votre programme.

Voyons ce qui se passe lorsque nous essayons de diviser par zéro en Python :

## Create a script named division_error.py
## Open VS Code editor and create a new file named division_error.py in ~/project directory
## Add the following content to the file

numerator = 10
denominator = 0

result = numerator / denominator

print(result)

Enregistrez ce code sous le nom division_error.py dans votre répertoire ~/project. Maintenant, exécutons le script :

cd ~/project
python division_error.py

Vous devriez voir un message d'erreur comme celui-ci :

Traceback (most recent call last):
  File "/home/labex/project/division_error.py", line 4, in <module>
    result = numerator / denominator
ZeroDivisionError: division by zero

L'erreur ZeroDivisionError indique que nous avons essayé de diviser par zéro. Pour éviter que cette erreur ne fasse planter notre programme, nous pouvons utiliser des techniques de gestion d'erreurs. Une approche courante consiste à utiliser un bloc try-except :

## Create a script named safe_division.py
## Open VS Code editor and create a new file named safe_division.py in ~/project directory
## Add the following content to the file

numerator = 10
denominator = 0

try:
    result = numerator / denominator
    print(result)
except ZeroDivisionError:
    print("Error: Cannot divide by zero")

Enregistrez ce code sous le nom safe_division.py dans votre répertoire ~/project. Maintenant, exécutons le script :

cd ~/project
python safe_division.py

Vous devriez voir la sortie suivante :

Error: Cannot divide by zero

Dans cet exemple, le bloc try tente d'effectuer la division. Si une erreur ZeroDivisionError se produit, le bloc except est exécuté, ce qui affiche un message d'erreur au lieu de faire planter le programme.

Une autre approche consiste à vérifier si le dénominateur est égal à zéro avant d'effectuer la division :

## Create a script named check_division.py
## Open VS Code editor and create a new file named check_division.py in ~/project directory
## Add the following content to the file

numerator = 10
denominator = 0

if denominator == 0:
    print("Error: Cannot divide by zero")
else:
    result = numerator / denominator
    print(result)

Enregistrez ce code sous le nom check_division.py dans votre répertoire ~/project. Maintenant, exécutons le script :

cd ~/project
python check_division.py

Vous devriez voir la sortie suivante :

Error: Cannot divide by zero

Ces deux approches vous permettent de gérer les erreurs de division par zéro de manière élégante et d'empêcher votre programme de planter. Choisissez l'approche qui correspond le mieux à vos besoins et à votre style de codage.

Résumé

Dans ce laboratoire, vous avez appris le concept de divisibilité en mathématiques et son application en programmation Python. Vous avez exploré comment déterminer si un nombre est divisible par un autre en vérifiant si le reste de leur division est égal à zéro.

Vous avez utilisé l'opérateur modulo (%) en Python pour trouver le reste d'une division et avez mis en œuvre des instructions conditionnelles pour afficher si un nombre est divisible par 2, 3 et 5. Vous avez créé et exécuté un script Python nommé divisibility.py pour illustrer ce concept.