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 compteMéthodes
Les 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 **.