Aller au contenu principal
BacInfo

Ch. 01 · Leçon 2

Les types de données

40 minanalyse · pascal

Ce que vous saurez faire

  • Identifier les principaux types de données simples utilisés en algorithmique
  • Déclarer une variable dans le langage Pascal selon son type
  • Distinguer les opérateurs applicables à chaque type de donnée
  • Évaluer des expressions arithmétiques, logiques et relationnelles
  • Manipuler les caractères et les chaînes de caractères

id: 33-232-types-de-donnees slug: 33-232-types-de-donnees titre: Les types de données chapitre: 1 chapitre_titre: Algorithmique et programmation lecon: 2 niveau: 4eme-sci ordre: 20 prerequis: [] duree_estimee_min: 40 mots_cles:

  • type entier
  • type reel
  • type booleen
  • type caractere
  • chaine de caracteres
  • pascal
  • ascii langages:
  • analyse
  • pascal objectifs:
  • Identifier les principaux types de données simples utilisés en algorithmique
  • Déclarer une variable dans le langage Pascal selon son type
  • Distinguer les opérateurs applicables à chaque type de donnée
  • Évaluer des expressions arithmétiques, logiques et relationnelles
  • Manipuler les caractères et les chaînes de caractères status: published source_pdf: 33_232.pdf source_pages:
  • 1 kind: cours

Les types de données

En algorithmique, chaque donnée manipulée appartient à un type qui définit :

  • l'ensemble des valeurs qu'elle peut prendre (domaine de définition),
  • les opérateurs applicables sur ces valeurs,
  • la place mémoire occupée.

On distingue ici quatre familles de types simples : entier, réel, booléen, caractère, ainsi que le type chaîne de caractères.

Les types numériques

Type entier

Domaine de valeurs : sous-ensemble de ℤ. Valeur maximale par défaut : 32767.

Opérateurs arithmétiques : +, -, *, div, mod

  • div : donne le quotient de la division entière.
  • mod : donne le reste de la division entière.

Exemple :

23 div 7 = 3      (quotient)
23 mod 7 = 2      (reste)

Dans le TDO :

ObjetType/Nature
m, i, jentier

Type réel

Domaine de valeurs : sous-ensemble des nombres réels ℝ, environ entre 10⁻³⁸ et 10³⁸.

Un réel s'écrit sous forme mantisse / exposant. Exemple : 2,6 × 10² s'écrit en notation scientifique 2.6 E+02.

Opérateurs arithmétiques : +, -, *, / (division réelle).

Dans le TDO :

ObjetType/Nature
x, yréel

Type booléen

Opérateurs logiques sur les booléens :

Opérateur en analyseOpérateur en PascalRôle
NONNOTNégation
ETANDConjonction
OUORDisjonction
OUexXOROu exclusif

Table de vérité :

xyNON(x)x ET yx OU yx OUex y
FauxFauxVraiFauxFauxFaux
FauxVraiVraiFauxVraiVrai
VraiVraiFauxVraiVraiFaux
VraiFauxFauxFauxVraiVrai
Exercice 1
Évaluer des expressions booléennes

Donner la valeur des expressions suivantes :

  1. (15 > 5) ET (3 < 6)
  2. (15 > 5) OU (2 > 5)
  3. (10 > 5) OU (20 > 40) ET (3 < 2)
Voir le corrigé
  1. (15 > 5) ET (3 < 6) = Vrai ET Vrai = Vrai

  2. (15 > 5) OU (2 > 5) = Vrai OU Faux = Vrai

  3. (10 > 5) OU (20 > 40) ET (3 < 2)

    Ordre de priorité : ET avant OU, donc on évalue d'abord (20 > 40) ET (3 < 2) = Faux ET Faux = Faux.

    Puis Vrai OU Faux = Vrai.

Ordre de priorité :

  1. Les expressions entre parenthèses sont prioritaires.
  2. NON > ET > OU = OUex

Dans le TDO :

ObjetType/Nature
flag, testbooléen

Affectations :

  • flag ← Vrai
  • test ← 5 < 2

Type caractère

Tous ces caractères sont ordonnés selon leurs codes ASCII (American Standard Code For Information Interchange), norme utilisée pour le codage binaire des caractères (256 caractères).

Quelques relations d'ordre :

"0" < "1" < ... < "9" < ... < "A" < "B" < ... < "Z" < ... < "a" < "b" < ...

Une variable de type caractère contient un seul caractère. L'espace " " est un caractère blanc.

Opérateurs sur les caractères :

Le type caractère est ordonné : les opérateurs relationnels sont définis : <, >, =, <=, >=, <>.

Exemple : "A" < "B" donne Vrai.

Dans le TDO :

ObjetType/Nature
c1, c2caractère

Affectations :

  • c1 ← 'A'
  • c2 ← 'B'

Type chaîne de caractères

Dans le TDO :

ObjetType/Nature
nomchaîne de 10 caractères
prenomchaîne

Exemples :

  • Nom ← "" (chaîne vide)
  • Prénom ← " " (espace)
  • Ville ← "Sousse"

Accès à un caractère d'une chaîne

Exemple :

CH ← "Tunisie"
c  ← CH[1]        { c contient 'T' }
CH[7] ← "a"       { CH devient "Tunisia" }

Comparaison de chaînes

Exemples :

  • "Mohamed" > "Ali" → Vrai
  • "Said" < "Saleh" → Vrai

Exercices d'application

Exercice 2
Choisir le type adapté

Pour chacun des objets suivants, indiquer le type le plus adapté :

  1. L'âge d'un élève
  2. La moyenne générale d'un élève
  3. Le sexe d'un élève ('M' ou 'F')
  4. Le nom et prénom d'un élève
  5. Indicateur de présence (présent ou absent)
Voir le corrigé
  1. entier (BYTE suffit puisque l'âge tient entre 0 et 255)
  2. réel (présence de décimales)
  3. caractère (un seul caractère)
  4. chaîne de caractères
  5. booléen (deux états possibles)
Exercice 3
Évaluer des expressions arithmétiques entières

Évaluer les expressions suivantes :

  1. 17 div 5
  2. 17 mod 5
  3. 4 div 9
  4. 4 mod 9
Voir le corrigé
  1. 17 div 5 = 3 (quotient entier)
  2. 17 mod 5 = 2 (reste)
  3. 4 div 9 = 0
  4. 4 mod 9 = 4
Exercice 4
Manipulation de chaîne

Soit CH ← "Informatique". Quel est le contenu de CH après les instructions suivantes ?

  1. CH[1] ← "i"
  2. Puis CH[12] ← "s"
Voir le corrigé
  1. Après CH[1] ← "i" : CH = "informatique"
  2. Après CH[12] ← "s" : CH = "informatiques" — attention, la longueur reste de 12, donc en réalité CH = "informatiqus". Le 12ᵉ caractère e est remplacé par s.
Vérification des acquis

Quiz : types de données

Bien identifier le type de chaque donnée — la base pour écrire des algorithmes corrects.

Quiz (5 questions)

1

Quel **type** convient pour stocker la moyenne d'un élève (entre 0 et 20) ?

2

La valeur `'2'` (avec guillemets) est de type :

3

Quel **opérateur** retourne un booléen ?

4

L'expression `'A' < 'B'` vaut :

5

Combien d'octets occupe un type `réel` en Turbo Pascal ?

Bravo d'être arrivé jusqu'ici. Marquez la leçon terminée pour ancrer le progrès.