Vous êtes sur la page 1sur 10

DEPARTEMENT GENIE INFORMATIQUE

Chapitre - TYPES DE DONNEES


COMPOSÉS
Cours d’algorithmique
Licence 1 - ISI
2023-2024

Ibrahima DIANE
Introduction

• A partir des types de base (caractère, entier, réel), on


peut créer de nouveaux types, appelés types
composés, qui permettent de représenter des
ensembles de données organisés.

ISI / M. I DIANE 2
Les énumérations

• Une énumération est un type permettant de définir un ensemble de


constantes, parmi lesquelles les variables de ce type prendront leur valeur.
• Pour déclarer une variable de type énuméré, il faut d’abord déclarer le type.

• La syntaxe de définition d’un type énuméré est la suivante :


type
nom_type = { constante1, constante2, …, constanteN }

• Exemple:
type
couleur = {bleu, blanc, rouge, vert, jaune, noir}
jour = {lundi, mardi, mercredi, jeudi, vendredi, samedi,
dimanche}

3
ISI / M. I DIANE
Les tableaux
• Un tableau permet de rassembler sous un même nom un nombre
fini d’éléments ayant tous le même type.

• Déclaration
nom_tableau: tableau [N] de type

• Un élément particulier du tableau est désigné en précisant son indice (son numéro).
• Le premier élément du tableau correspond à l’indice 0 et est désigné par nom_tableau[0].
• Le deuxième élément du tableau correspond à l’indice 1 et est désigné par nom_tableau[1].
• ...
• Le dernier élément du tableau correspond à l’indice N-1 et est désigné nom_tableau[N-1].

ISI / M. I DIANE 4
Les tableaux
• Manipulation d’un tableau à 1 dimension
• Les éléments d'un tableau sont des variables appelées variables indicées qui s'utilisent
exactement comme n'importe quelle autre variable classique. Autrement dit, elles peuvent
faire l'objet d'une affectation, elles peuvent figurer dans une expression arithmétique, dans
une comparaison, elles peuvent être affichées et saisies…

• On ne peut pas manipuler un tableau de manière globale( affectation à un autre tableau,


affichage, saisie…). Il faut le manipuler élément par élément (en le parcourant avec une
boucle Pour par exemple).

• Tableaux à plusieurs dimensions


nom_tableau: tableau[N1][N2] de type

• L’accès à un élément se fait en précisant un indice entre crochets pour chaque dimension.
• Le premier indice de chaque dimension est 0.

Rq
• Pour parcourir tous les éléments d’un tableau à deux dimensions, on peut utiliser deux
boucles Pour imbriquées : la première boucle pour une dimension et la deuxième pour
l’autre dimension.

ISI / M. I DIANE 5
Les structures
• Une structure permet de désigner sous un seul nom un ensemble d’éléments
pouvant être de types différents. Chaque élément de la structure, appelé champ
ou membre, est désigné par un identificateur.
• Les variables de type structure sont aussi appelées structures.
• La syntaxe de déclaration d’un type structuré est la suivante :
type
nom_type = Structure
champ1 : type1
...
champN : typeN
FinStructure
• Exemples:
• - Le type correspondant à une date peut être défini ainsi :
type
date = Structure
jour : entier
mois : chaîne
année : entier
FinStructure

Déclaration d’une variable de type structure

d : date // d est une variable de type date


6
ISI / M. I DIANE
Les opérations sur les structures
Programme date
Type
- On accède aux différents date = Structure
champs d'une structure grâce à jour : entier
l'opérateur point, noté ''.''. mois : chaîne
année : entier
Par exemple, le champ appelé FinStructure
champ1 d’une variable structure Variable
x est désigné par l'expression d1, d2 : date
année : entier;
x.champ1
Début
// initialiser la date d1
- On peut effectuer sur le champ d1.jour = 23
d'une structure toutes les d1.mois = ''Novembre''
opérations valides sur des d1.année = 2000

variables de même type que ce // initialiser la date d2 à partir de d1


champ. d2 = d1

// afficher la date d2
- On peut appliquer l'opérateur Ecrire(d2.jour, '/', d2.mois, '/', d2.année)
d'affectation à une structure (à la
// copier le champ année de d2 dans la variable année
différence d’un tableau). Cela année = d2.année
permet de copier tous les
champs de la structure. // saisir le champ année de d2
Lire(d2.année)
Fin
7
ISI / M. I DIANE
FIN

ISI / M. I DIANE 8
Exercices
Exercice: 1
Écrire programme qui calcule la moyenne d’un tableau de 20
entiers. L’utilisateur doit avoir la possibilité de recommencer
s’il le désire.
Exercice: 2
Ecrire un programme qui recherche un élément donné dans
un tableau et qui affiche si l’élément est trouvé ou non.
Exercice: 3
Ecrire un programme qui réalise la somme c de deux matrices
d'entiers a et b
Exercice: 4
Ecrire un programme qui, en utilisant une structure date de 3
champs de type entier, réalise la saisie d’une date et affiche la
date du lendemain. On suppose qu’un mois fait 30 jours.
9
ISI / M. I DIANE
• Exercice 5
Un hôpital veut un logiciel pour gérer les patients aux
urgences. Chaque patient est décrit par son numéro , son
nom, son âge et un indice ESI (Emergency Severity Index) qui
indique à quel point le cas du patient est urgent. L'ESI va de 1
(urgence absolue) à 5 (pas urgent).
Ecrire un algorithme qui permet de :
1. définir un enregistrement pour représenter les patients
dans le logiciel ;
2. initialiser un tableau de patients par les valeurs correctes
(l’âge, le nom , l’ESI et le numéro) sont saisis par l’utilisateur;
3. calculer l'indice ESI le moins élevé et l’âge le plus élevé d’un
tableau de patients.
4. Afficher les informations du ou des patients dont le cas est
plus urgent
ISI / M. I DIANE 10

Vous aimerez peut-être aussi