Utiliser les opérateurs //, % et ** sur les entiers
Créez un compte gratuit pour suivre votre avancement et reprendre où vous avez laissé.
Créer un compteLes trois opérateurs
Sur des entiers, Python propose trois opérateurs utiles :
- // : quotient entier (division euclidienne).
- % : reste de la division euclidienne.
- ** : puissance.
Méthode
Pour choisir le bon opérateur :
- Quotient décimal (nombre à virgule) : utiliser /. Exemple : 7 / 2 renvoie 3.5.
- Quotient entier (arrondi vers le bas) : utiliser //. Exemple : 7 // 2 renvoie 3.
- Reste d'une division euclidienne : utiliser %. Exemple : 7 % 2 renvoie 1, car $7 = 2 \times 3 + 1$.
- Puissance $a^n$ : utiliser a**n. Exemple : 2**5 renvoie 32.
Rappel sur les priorités : Python respecte l'ordre habituel (parenthèses, puis puissances, puis multiplications/divisions, puis additions/soustractions).
Quotient et reste d'une division euclidienne
On veut calculer le quotient et le reste de la division euclidienne de 47 par 6.
q = 47 // 6
r = 47 % 6
print("47 =", 6, "*", q, "+", r)
Étape 1 : 47 // 6 vaut 7, car $47 = 6 \times 7 + 5$ et $6 \times 7 = 42 \leqslant 47$.
Étape 2 : 47 % 6 vaut 5, qui est le reste.
Étape 3 : L'affichage donne : 47 = 6 * 7 + 5, ce qui traduit bien la division euclidienne $47 = 6 \times 7 + 5$.
Tester la parité d'un entier
Un entier n est pair si et seulement si $n \% 2 = 0$. On peut écrire :
n = int(input("Entrez un entier : "))
reste = n % 2
print("Reste de la division par 2 :", reste)
Étape 1 : Si l'utilisateur tape 14, n vaut 14 et n % 2 vaut 0 : 14 est pair.
Étape 2 : S'il tape 15, n % 2 vaut 1 : 15 est impair.
Cet opérateur % sera souvent utilisé avec une instruction conditionnelle pour tester la parité.
Calculer une puissance
On veut calculer $2^{10}$ et $5^3$ :
a = 2 ** 10
b = 5 ** 3
print(a, b) # affiche 1024 125
Étape 1 : 2 ** 10 calcule $2^{10} = 1024$.
Étape 2 : 5 ** 3 calcule $5^3 = 125$.
Attention à l'ordre : dans 2 * 3 ** 2, Python calcule d'abord 3 ** 2 ($= 9$) puis 2 * 9 ($= 18$), et non $(2 \times 3)^2 = 36$. Utiliser des parenthèses si besoin.
Attention
Ne pas confondre :
- / (division décimale) renvoie toujours un nombre float : 10 / 2 renvoie 5.0 (pas 5).
- // (quotient entier) : 10 // 2 renvoie 5 (entier).
- ^ n'est pas la puissance en Python ; cet opérateur a une autre signification. Pour la puissance, il faut obligatoirement utiliser **.