Aller au contenu principal
algorithmiqueVariables, types et affectation

Variables, types et affectation

Objectifs du Chapitre

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.

Où on va

Une variable est une boîte étiquetée : on y range une valeur, on la relit, on la remplace. Tout le reste du parcours en dépend, et deux confusions bloquent presque tout le monde au début : la flèche qui range n'est pas un égal qui compare, et le nom d'une variable n'est pas son contenu. Ce chapitre les traite en premier.

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.

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 :

  • L’étiquette correspond au nom de la variable (par exemple age ou nom).
  • À l’intérieur de la boîte, on place une valeur (par exemple 20 ou "Lina").
  • On peut ouvrir la boîte pour voir ce qu’il y a dedans (afficher la valeur), ou remplacer son contenu par une nouvelle valeur (modifier la variable).

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

Exemple (pseudo-code)

Algorithme
Début
age 20
nom "Lina"
Écrire "Bonjour ", nom, ", tu as ", age, " ans."
Fin

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

  • age contient la valeur 20
  • nom contient la valeur "Lina"

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 :

  • une boîte pour les nombres,
  • une autre pour les textes,
  • une autre encore pour les réponses "oui/non".

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 :

  • Les entiers servent à compter (ex. le nombre d’élèves dans une classe).
  • Les réels servent à mesurer (ex. la température, une distance, un prix).
  • Les chaînes servent à communiquer (ex. un prénom, un message).
  • Les booléens servent à raisonner (ex. “est-ce que la porte est ouverte ?”).

Exemple

Algorithme
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 :

Algorithme
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)

Algorithme
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 :

Algorithme
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 :

Algorithme
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. À toi de jouer

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

Afficher la solution
Algorithme
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.

Afficher la solution
Algorithme
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).

Afficher la solution

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.