Chapitre 2 — Les variables et les types de données

Avant de pouvoir manipuler des informations dans un algorithme, il faut savoir où et comment les stocker. Ce chapitre introduit la notion de variable et explique comment représenter différents types de valeurs dans un programme.
Objectifs pédagogiques
  • Comprendre ce qu’est une variable et son rôle dans un algorithme.
  • Identifier les principaux types de données (entiers, réels, chaînes, booléens).
  • Savoir lire, affecter et afficher des valeurs.
  • Connaître les erreurs fréquentes liées aux types et à l’affectation.
Plan du chapitre
  • 1. Définition d’une variable
  • 2. Les types de données
  • 3. Lecture et affichage
  • 4. Applications directes

1. Définition d’une variable

Définition
Une variable est un espace mémoire qui porte un nom et contient une valeur. Elle permet de stocker une information pour la réutiliser ou la modifier au cours de l’exécution d’un algorithme.

Pour bien comprendre cette notion, imaginez qu’une variable est comme une boîte étiquetée :

En algorithmique, manipuler des variables revient à ouvrir, lire, vider ou remplir ces petites boîtes d’informations.

Exemple (pseudo-code)
Début
    age ← 20
    nom ← "Lina"
    Écrire "Bonjour ", nom, ", tu as ", age, " ans."
Fin

Ici, l’algorithme crée deux « boîtes » :

Puis, il combine ces deux informations pour afficher un message personnalisé à l’utilisateur.

Astuce
Le symbole signifie "prend la valeur de". Par exemple, a ← 5 se lit : « a prend la valeur 5 ». Ce symbole d’affectation indique le sens dans lequel la valeur circule : la donnée à droite est stockée dans la variable à gauche. C’est l’une des opérations les plus fréquentes dans tout algorithme.

On peut donc imaginer que la flèche correspond à l’action de mettre une valeur dans une boîte. La valeur part de la droite et entre dans la variable située à gauche. Ainsi, a ← 5 veut dire : on range la valeur 5 dans la boîte nommée a.

L’affectation est donc une étape essentielle : elle permet de modifier le contenu d’une variable au cours du déroulement du programme. Par exemple, on peut incrémenter une variable à chaque tour d’une boucle, pour compter combien de fois une action a été effectuée. Mais attention : si l’on se trompe de sens, le contenu de la boîte ne sera pas mis à jour correctement.

Erreur fréquente
Écrire 5 ← a est incorrect : on ne peut pas affecter une valeur à une constante. Le sens de la flèche ne doit jamais être inversé. On peut retenir la règle suivante : « la variable reçoit la valeur ». Par exemple, total ← total + 1 signifie que la variable total est mise à jour en ajoutant 1 à sa valeur actuelle.

On peut visualiser cela comme un compteur : chaque fois qu’on ajoute 1, on ouvre la boîte, on regarde la valeur, on y ajoute 1, puis on referme la boîte avec la nouvelle valeur. Ainsi, la boîte « total » garde en mémoire le nombre d’éléments comptés jusqu’ici.

Avant de continuer
  • Savez-vous à quoi sert une variable dans un algorithme ?
  • Pouvez-vous donner un exemple de variable dans la vie courante (ex : un compteur, un score, un solde) ?
  • Seriez-vous capable d’expliquer ce que fait une instruction comme total ← total + 1 ?

2. Les types de données

Définition
Le type d’une donnée indique la nature de la valeur stockée. Chaque type détermine les opérations possibles sur cette donnée.

Dans la vie quotidienne, toutes les informations ne sont pas de la même nature :
un âge est un nombre, un prénom est un texte, une lampe peut être allumée ou éteinte.
De la même manière, en algorithmique, chaque donnée possède un type qui décrit ce qu’elle représente et ce qu’on peut en faire.

On peut voir cela comme des boîtes de formes différentes :

Chaque boîte ne peut contenir qu’un seul type d’objet.
Par exemple, une boîte prévue pour des nombres ne peut pas contenir du texte.

TypeExempleDescription
Entiern ← 12Nombre sans virgule, utilisé pour compter
Réelpi ← 3.14Nombre à virgule, utilisé pour mesurer ou calculer des valeurs précises
Chaînenom ← "Alice"Texte entre guillemets, utilisé pour stocker des mots ou des phrases
Booléenactif ← VraiDeux valeurs possibles : Vrai ou Faux, utile pour les tests logiques

Chaque type a donc ses usages :

Exemple
Début
    note ← 15.5
    reussi ← note >= 10
    Écrire "Réussi ? ", reussi
Fin

Explication : Ici, la variable note est un réel (15,5). La variable reussi est un booléen : elle vaut Vrai si la note est supérieure ou égale à 10, sinon Faux. L’affichage produit donc :

Réussi ?  Vrai

Cet exemple montre que les types de données permettent à l’algorithme de comparer, calculer et raisonner selon la nature de l’information manipulée.

Astuce
Bien choisir le type d’une variable, c’est comme choisir la bonne boîte pour ranger un objet. Si vous rangez du texte dans une variable prévue pour les nombres, l’algorithme ne saura pas quoi en faire et renverra une erreur. Prenez donc l’habitude de toujours vous demander : “quelle est la nature de cette donnée ?”.
Erreur fréquente
Confondre un nombre et une chaîne est une erreur courante. Par exemple : ```text Début n ← "10" // chaîne de caractères Écrire n + 5 // erreur ! Fin ``` Ici, "10" est du texte et non un nombre. L’algorithme ne peut pas additionner du texte et un nombre. Pour corriger cela, il faut convertir la chaîne en entier avant le calcul.

3. Lecture et affichage

Définition
Les entrées (lecture) permettent de demander une valeur à l’utilisateur, tandis que les sorties (affichage) servent à montrer un résultat. Ces deux opérations constituent la communication entre le programme et l’utilisateur.

On dit qu’un algorithme lit une donnée lorsqu’il attend que l’utilisateur saisisse une valeur (par exemple un nombre, un texte, ou une réponse).
De la même manière, on dit qu’il écrit une donnée lorsqu’il affiche une information à l’écran.
Ces opérations sont indispensables pour interagir avec la personne qui exécute le programme.

Exemple (pseudo-code)
Début
    Lire prénom
    Écrire "Bonjour ", prénom, " !"
Fin

Ici, l’algorithme lit la valeur saisie par l’utilisateur et la stocke dans la variable prénom. Ensuite, il écrit un message personnalisé en utilisant cette valeur. C’est une première forme d’interaction dynamique.

Astuce
Lorsqu’on lit plusieurs valeurs, on peut les séparer par des virgules : Lire a, b Cela évite de répéter plusieurs fois la même instruction. On peut ensuite utiliser ces variables directement dans les calculs ou les affichages :
Début
    Lire a, b
    Écrire "Somme = ", a + b
Fin
Erreur fréquente
Oublier de lire une variable avant de l’utiliser provoque une erreur logique : l’algorithme manipule alors une valeur inexistante. Par exemple, dans le code suivant :
Début
    c ← a + b
    Écrire c
Fin

si a et b n’ont jamais été lus ou initialisés, le résultat sera indéfini.
Il faut donc toujours s’assurer que les variables ont une valeur avant de les utiliser.

En résumé, Lire permet de recevoir une information extérieure (entrée), et Écrire permet d’en produire une (sortie). Ces deux actions transforment l’algorithme d’un simple calculateur en un programme capable de dialoguer avec l’utilisateur.

Avant de continuer
  • Quelle est la différence entre Lire et Écrire ?
  • Pourquoi faut-il initialiser une variable avant de s’en servir ?
  • Dans quel ordre logique doit-on placer les lectures et les affichages dans un algorithme ?

4. Applications directes

Exercice 1 : Écrire un algorithme qui lit un entier et affiche son triple.

Début
    Lire n
    Écrire "Le triple de ", n, " est ", 3 * n
Fin

Explication : L’algorithme lit un nombre (par exemple n = 4) et calcule 3 * n, soit 12. Il affiche ensuite le résultat sous forme de phrase. C’est un premier exemple d’utilisation d’une variable pour réaliser un calcul et restituer le résultat à l’utilisateur.

Résultat attendu :

Entrée : 4  
Sortie : Le triple de 4 est 12

Exercice 2 : Écrire un algorithme qui lit deux entiers, calcule leur somme et affiche le résultat.

Début
    Lire a, b
    somme ← a + b
    Écrire "Somme = ", somme
Fin

Explication : Ici, deux valeurs sont lues puis additionnées. La variable somme sert à mémoriser le résultat avant l’affichage. Cette étape intermédiaire (affectation) rend l’algorithme plus clair et plus réutilisable.

Résultat attendu :

Entrées : 7 et 5  
Sortie : Somme = 12

Remarquez que l’opération de lecture (Lire a, b) peut saisir les deux valeurs d’un coup. Cela illustre l’économie d’instructions grâce à une écriture plus compacte.

Exercice 3 : Décrire en langage naturel un algorithme qui demande un nom et un âge, puis affiche un message personnalisé en fonction de l’âge (mineur ou majeur).

Description possible :

  1. L’algorithme commence.
  2. Il lit le nom et l’âge de l’utilisateur.
  3. Si l’âge est inférieur à 18, il affiche : « Bonjour [nom], tu es mineur. »
  4. Sinon, il affiche : « Bonjour [nom], tu es majeur. »
  5. L’algorithme se termine.

💬 Explication : Cet exercice prépare à la notion de condition (chapitre suivant). Il montre comment les variables peuvent être utilisées non seulement pour stocker des valeurs, mais aussi pour prendre des décisions selon leur contenu.

Résultat attendu :

Entrées : nom = "Lucas", âge = 16  
Sortie : Bonjour Lucas, tu es mineur.

ou

Entrées : nom = "Emma", âge = 21  
Sortie : Bonjour Emma, tu es majeur.

À retenir

À retenir
  • Une variable est un nom associé à une valeur.
  • Les types de base sont : entier, réel, chaîne, booléen.
  • Une instruction Lire sert à obtenir une donnée, Écrire à l’afficher.
  • Un algorithme manipule des variables à travers des affectations.

Pour aller plus loin

Prochain chapitre
Dans le prochain chapitre, vous apprendrez à utiliser les conditions pour prendre des décisions dans un algorithme.