Variables de type entier, réel, chaîne, booléen

2ndeMathematiquesStructures de baseVariables de type entier, réel, chaîne, booléen~8 min de lecture

Variables de type entier, réel, chaîne, booléen

Une variable est une boîte étiquetée qui garde une valeur, et son type (entier, réel, chaîne ou booléen) dit quelle sorte de valeur elle contient et quelles opérations on peut faire avec.

Objectifs

  • Comprendre ce qu'est une variable et l'instruction d'affectation.
  • Reconnaître les quatre types de base : entier, réel, chaîne de caractères, booléen.
  • Utiliser les opérations propres à chaque type, en pseudo-code et en Python.
  • Convertir une valeur d'un type à un autre et éviter les erreurs de type.

1. Qu'est-ce qu'une variable ?

Une variable possède :

  • un nom (l'étiquette) : prix, age, nom_eleve…
  • une valeur (le contenu) : 500, 15, "Kofi"…
  • un type (la sorte de contenu) : nombre entier, nombre réel, texte, vrai/faux.

L'affectation range une valeur dans une variable. En pseudo-code on écrit prix ← 500 ; en Python on écrit prix = 500. Une nouvelle affectation remplace l'ancienne valeur, comme quand on vide la boîte avant de la remplir à nouveau.

Regarde ce qui se passe dans la mémoire, instruction par instruction :

Deux boîtes nommées a et b dont le contenu change au fil des affectations a b 5 a ← 5 3 b ← 3 8 a ← a + b

Étape 1 : l'instruction a ← 5 range la valeur 5 dans la boîte a.

Étape 2 : b ← 3 range 3 dans la boîte b ; a garde sa valeur.

Étape 3 : a ← a + b calcule d'abord 5 + 3 = 8, puis remplace l'ancien 5 par 8. La valeur de b ne change pas.

Après les instructions x ← 4, puis x ← x × 3, que vaut x ?

  1. 4
  2. 12
  3. 7
On calcule x × 3 = 4 × 3 = 12, puis 12 remplace l'ancienne valeur 4.

2. Les types numériques : entier et réel

  • Entier (Python : int) : nombre sans partie décimale, positif ou négatif : 0, 12, −7, 2500.
  • Réel (Python : float) : nombre à virgule. Attention, en programmation la virgule s'écrit avec un point : 1.62, 3.0, -0.5.

Opérations en Python :

OpérationSymboleExempleRésultat
addition, soustraction, multiplication+ - *4 * 312
division (résultat réel)/7 / 23.5
quotient de la division euclidienne//7 // 23
reste de la division euclidienne%7 % 21
puissance**2 ** 38

En mathématiques, cela correspond à \(7 = 2 \times 3 + 1\) : le quotient est 3 et le reste est 1.

Exemple résolu : les billets de 2 000 F CFA

Kouni a 9 500 F CFA. Combien de billets de 2 000 F peut-elle avoir au maximum, et combien reste-t-il ? Écris les instructions Python. Cherche d'abord.

Étape 1 : on range la somme dans une variable entière : somme = 9500.
Étape 2 : le nombre de billets est le quotient : billets = somme // 2000, soit 4.
Étape 3 : le reste est reste = somme % 2000, soit 1 500 F CFA.
Vérification : \(4 \times 2000 + 1500 = 9500\).

Que renvoie Python pour 17 % 5 ?

  1. 3.4
  2. 3
  3. 2
\(17 = 5 \times 3 + 2\) : % donne le reste, donc 2. 17 // 5 donnerait 3 et 17 / 5 donnerait 3.4.

3. Les chaînes de caractères

Une chaîne (Python : str) est un texte écrit entre guillemets : "Awa", "Bamako", "225".

  • Concaténation (mettre bout à bout) : "Bon" + "jour" donne "Bonjour".
  • Répétition : "ha" * 3 donne "hahaha".
  • Longueur : len("Lomé") donne 4.

Que vaut "12" + "8" en Python ?

  1. "128"
  2. 20
  3. Une erreur
Les deux valeurs sont des chaînes (entre guillemets) : + les met bout à bout.

4. Les booléens

Un booléen (Python : bool) ne prend que deux valeurs : True (vrai) ou False (faux). On l'obtient souvent par une comparaison : == (égal), != (différent), <, >, <=, >=.

On combine les booléens avec and (et), or (ou), not (non) :

ABA and BA or Bnot A
TrueTrueTrueTrueFalse
TrueFalseFalseTrueFalse
FalseTrueFalseTrueTrue
FalseFalseFalseFalseTrue

Exemple résolu : l'admission

Un élève est admis si sa moyenne est au moins 10 et s'il n'a pas plus de 5 absences. Avec moyenne = 11.5 et absences = 7, que vaut admis = moyenne >= 10 and absences <= 5 ? Cherche d'abord.

Voir la solution

moyenne >= 10 vaut True (11,5 est au moins 10) ; absences <= 5 vaut False (7 est plus grand que 5). True and False donne False : l'élève n'est pas admis.

Que vaut (3 > 5) or (2 == 2) ?

  1. False
  2. True
  3. Une erreur
3 > 5 est faux, 2 == 2 est vrai ; avec « or », il suffit qu'une des deux soit vraie.

5. Choisir le bon type et convertir

flowchart TD
  A[Valeur a ranger] --> B{Vrai ou faux}
  B -- oui --> C[Booleen bool]
  B -- non --> D{Texte}
  D -- oui --> E[Chaine str]
  D -- non --> F{Partie decimale}
  F -- oui --> G[Reel float]
  F -- non --> H[Entier int]

Pour choisir le type d'une variable, on se pose les questions dans l'ordre : vrai ou faux ? du texte ? un nombre à virgule ?

Les fonctions int(), float(), str() et type() permettent de convertir ou de vérifier un type :

  • int("25") donne 25 ; float("2.5") donne 2.5 ; str(500) donne "500".
  • int(3.9) donne 3 (la partie décimale est coupée, pas arrondie).
  • type(3.0) indique float : 3.0 est un réel, même si sa valeur est entière.

Exemple résolu : le prix total

Un programme demande le prix d'un cahier (en F CFA) et le nombre de cahiers, puis affiche le total. Le prix 250 et le nombre 4 sont saisis au clavier.

Étape 1 : prix = int(input("Prix ? ")) convertit la saisie "250" en entier 250.
Étape 2 : n = int(input("Nombre ? ")) donne l'entier 4.
Étape 3 : total = prix * n vaut 1000, un entier.
Étape 4 : print("Total : " + str(total) + " F CFA") affiche Total : 1000 F CFA (on convertit total en chaîne pour la concaténation).

Quel est le type de la valeur 3.0 en Python ?

  1. int
  2. str
  3. float
Le point indique un nombre réel : 3.0 est un float, même si sa valeur est entière.

Quel type choisir pour une variable « est_majeur » ?

  1. booléen
  2. entier
  3. chaîne
Être majeur est vrai ou faux : c'est un booléen.

Erreurs fréquentes

  • Écrire une virgule au lieu d'un point : 1,5 n'est pas le réel 1,5 en Python, il faut 1.5.
  • Oublier les guillemets d'une chaîne : nom = Awa cherche une variable appelée Awa ; il faut nom = "Awa".
  • Confondre = (affectation) et == (comparaison).
  • Calculer avec le résultat de input() sans le convertir.
  • Confondre / (division réelle) et // (quotient entier).

Récapitulatif

Une variable a un nom, une valeur et un type. L'affectation remplace la valeur. Les entiers et les réels servent aux calculs (// et % pour la division euclidienne), les chaînes au texte (concaténation, longueur), les booléens aux tests (True, False, and, or, not). On convertit avec int(), float() et str().

Affectation
a ← 5 (Python : a = 5) : range une valeur dans une variable et remplace l'ancienne
Entier (int)
Nombre sans virgule : 12, −7. Opérations // (quotient) et % (reste)
Réel (float)
Nombre à virgule, écrit avec un point : 1.62. 7 / 2 donne 3.5
Chaîne (str)
Texte entre guillemets ; + colle deux chaînes, len() donne la longueur
Booléen (bool)
True ou False ; résultat d'une comparaison ; and, or, not
Conversion
int(), float(), str() ; input() renvoie toujours une chaîne

Teste tes connaissances sur ce cours

Crée ton compte gratuitement pour accéder aux quiz associés et suivre ta progression.