2 types declarations - coursmrached.free.frcoursmrached.free.fr/2_types_declarations.pdf ·...

12
29/11/2013 1 Miloud RACHED Année universitaire 2013-2014 Objectifs Présenter les différents types de données Connaître les différentes opérations élémentaires associées à chaque type Types et déclarations Plan Types de données Opérations élémentaires Types et déclarations Types et déclarations Miloud RACHED Année universitaire 2013-2014

Upload: buikhanh

Post on 14-Sep-2018

215 views

Category:

Documents


0 download

TRANSCRIPT

29/11/2013

1

Miloud RACHED Année universitaire 2013-2014

Objectifs

�Présenter les différents types de données

�Connaître les différentes opérations élémentairesassociées à chaque type

Types et déclarations

Plan

� Types de données

� Opérations élémentaires

Types et déclarationsTypes et déclarations

Miloud RACHED Année universitaire 2013-2014

29/11/2013

2

Plan

Types de données

� Introduction

� Correspondances de type

� Cinq types élémentaires

� ENTIER

� REEL

� CARACTERE

� CHAINE

� BOOLEEN

� Structures de données évoluées

Introduction

�Correspondance entre les structures de données et lamémoire d’un ordinateur

�Deux catégories :

� Structures élémentaires

� Structures évoluées

Types de données

Correspondances de type

Types de données

� En algorithmique :

� R : Le type réel REEL

� Z : Le type entier (relatif) ENTIER

� Le type booléen BOOLEEN

� Le type caractère CARACTERE

� Au niveau des langages :

� float, real, double, int, integer, bool, char, …

Quatres types de base :

�Type élémentaire complémentaire :

� Chaînes de caractères :

o Suite de caractères : CHAINE

Cinq types élémentaires

Types de données

Un cinquième type:

29/11/2013

3

�Données élémentaires utilisées en algorithmique :

� ENTIER

� REEL

� CARACTERE

� CHAINE

� BOOLEEN

�Les structures avancées

Cinq types élémentaires

Types de données

� ENTIER

� nombres entiers

� négatifs

� positifs

� nuls

� Exemples :

� 33

� - 13

Le type ENTIER

Types de données

� REEL

� nombres entiers

� fractionnés

� négatifs

� positifs

� nuls

� Exemples :

� 3,26

� -10,5

Le type REEL

Types de données

� CARACTERE (ou CAR)

� caractère unique

� Exemples :

� ‘F’

� ‘j’

� ‘!’

� ‘’ représente aucun caractère

Types de données

Le type CARACTERE

29/11/2013

4

� CHAINE

� caractère unique

� suite de caractères

� Exemples :

� "Bonjour"

� "586"

� "CUAT"

� " " représente aucun caractère

Types de données

Le type CHAINE

� BOOLEEN(*) (**)

� VRAI

� FAUX

* 1 pour VRAI et 0 pour FAUX, (voire 0 pour FAUX et toute autre valeur représente VRAI)

** en mémoire, pas de correspondance avec un élément « bit » !

Types de données

Le type BOOLEEN

Structures de données évoluées

Structures de données complexes et organisées

�Type CHAINE :

� LISTE (structure linéaire)

�Constructions de structures hiérarchisées :

� ENREGISTREMENTS ou ARBRES (structure non linéaire)

�Relations plus complexes :

� GRAPHES (structure non linéaire)

Types de données

Structures de données évoluées

�Parmi les structures linéaires :

� Listes (chaînage)

� Tableaux (structures indicées)

� Piles et files (listes dont les accès sont limités)

�Parmi les structures non linéaires :

� Enregistrements (structure contenant des champs)

� Arbres (structure hiérarchisée)

� Graphes (structure organisée par des relations)

Types de données

29/11/2013

5

Types et déclarations

Miloud RACHED Année universitaire 2013-2014

Plan

� Introduction

�Opérateur commun à tous les types

�Le type ENTIER

�Le type REEL

�Le type CARACTERE

�Le type CHAINE

�Le type BOOLEEN

�Constantes ou variables

Opérations élémentaires

Introduction

� Terminologie :

� Déclaration (réservation d’emplacement mémoire)

� Initialisation (écriture initiale)

� Affectation (écriture avec perte de l’ancienne donnée)

� Utilisation (lecture)

� Ré-affectation (possibilité de modifier une donnée à l’aide d’elle-même)

Opérations élémentaires

Type

ENTIER

REEL

CARACTERE

CHAINE

BOOLEEN

Opérationspossibles

Déclaration

Initialisation

Affectation

Utilisation

Ré-affectation

Opérateurs associés, symboles, mots clés correspondants

<--

Opérateur commun à tous les types

� Un symbole commun à toutes les structures de données

Opérations élémentaires

29/11/2013

6

nom_de_la_donnee : ENTIER

nom de la donnée

type élémentaire

Nom attribué à la donnéedéclarée.

Le type esttoujours

précédé du signe :

Déclaration

Le type ENTIER

Age : ENTIER;Num_tel : Entier;

Opérations élémentaires

nom_de_la_donnee <-- valeur : ENTIER

nom de la donnée

affectation

valeur d'initialisation

type élémentaire

Nom attribué à la donnéeinitialisée

Symboled'affectation

Valeur initialeaffectée à la

donnée

Le type esttoujours

précédé du signe :

Initialisation (avec déclaration)

Le type ENTIER

Opérations élémentaires

nom_de_la_donnee <-- valeur

nom de la donnée

affectation

valeur

Nom de la donnéeaffectée

Symboled'affectation

Valeuraffectéeà la donnée

Affectation (hors déclaration)

Le type ENTIER

Opérations élémentaires

autre_donnee <-- nom_de_la_donnee

nom d'une donnée

affectation

nom d'une donnée

Nom d'une autredonnéeaffectée à

l'aide d'une donnée

Symboled'affectation

Nom d'unedonnée

Utilisation

Le type ENTIER

Opérations élémentaires

29/11/2013

7

nom_de_la_donnee <-- nom_de_la_donnee + 1

nom de la donnée

affectation

nom de la même donnée

opération

Nom de la donnée

ré-affectée

Symboled'affectation

Nom de la donnée

ré-affectée

Opération lorsde l'affectation

Ré-affectation

Le type ENTIER

Opérations élémentaires

nom_de_la_donnee : REEL

nom de la donnée

type élémentaire

Nom attribué à la donnéedéclarée

Le type esttoujours

précédé du signe :

Déclaration

Le type REEL

Opérations élémentaires

Le type esttoujours

précédé du signe :

nom_de_la_donnee <-- valeur : REEL

nom de la donnée

affectation

valeur d'initialisation

type élémentaire

Nom attribué à la donnéeinitialisée

Symboled'affectation

Valeur initialeaffectée à la

donnée

Initialisation (avec déclaration)

Le type REEL

Opérations élémentaires

nom_de_la_donnee <-- valeur

nom de la donnée

affectation

valeur

Nom de la donnéeaffectée

Symboled'affectation

Valeuraffectéeà la donnée

Affectation (hors déclaration)

Le type REEL

Opérations élémentaires

29/11/2013

8

autre_donnee <-- nom_de_la_donnee

nom d'une donnée

affectation

nom d'une donnée

Nom d'une autredonnéeaffectée à

l'aide d'une donnée

Symboled'affectation

Nom d'unedonnée

Utilisation

Le type REEL

Opérations élémentaires

nom_de_la_donnee <-- nom_de_la_donnee * 0,5

nom de la donnée

affectation

nom de la même donnée

opération

Nom de la donnée

ré-affectée

Symboled'affectation

Nom de la donnée

ré-affectée

Opération lorsde l'affectation

Ré-affectation

Le type REEL

Opérations élémentaires

nom_de_la_donnee : CARACTERE

nom de la donnée

type élémentaire

Nom attribué à la donnéedéclarée

Le type esttoujours

précédé du signe :

Déclaration

Le type CARACTERE

Opérations élémentaires

nom_de_la_donnee <-- ‘valeur’ : CARACTERE

nom de la donnée

affectation

valeur d'initialisation

type élémentaire

Nom attribué à la donnéeinitialisée

Symboled'affectation

Valeur initialeaffectée à la

donnée

Le type esttoujours

précédé du signe :

Initialisation (avec déclaration)

Le type CARACTERE

Opérations élémentaires

29/11/2013

9

nom_de_la_donnee <-- ‘valeur’

nom de la donnée

affectation

valeur

Nom de la donnéeaffectée

Symboled'affectation

Valeuraffectéeà la donnée

Affectation (hors déclaration)

Le type CARACTERE

Opérations élémentaires

autre_donnee <-- nom_de_la_donnee

nom d'une donnée

affectation

nom d'une donnée

Nom d'une autredonnéeaffectée à

l'aide d'une donnée

Symboled'affectation

Nom d'unedonnée

Utilisation

Le type CARACTERE

Opérations élémentaires

nom_de_la_donnee <-- nom_de_la_donnee + 1

nom de la donnée

affectation

nom de la même donnée

opération

Nom de la donnée

ré-affectée

Symboled'affectation

Nom de la donnée

ré-affectée

Opération lorsde l'affectation

Ré-affectation*

Le type CARACTERE

Opérations élémentaires

* Cas particulier : variable entière d’un octet (codage ASCII). ‘a’ + 1 correspond à ‘b’

Le type esttoujours

précédé du signe :

nom_de_la_donnee : CHAINE

nom de la donnée

type élémentaire

Nom attribué à la donnéedéclarée

Déclaration

Le type CHAINE

Opérations élémentaires

29/11/2013

10

nom_de_la_donnee <-- “valeur” : CHAINE

nom de la donnée

affectation

valeur d'initialisation

type élémentaire

Nom attribué à la donnéeinitialisée

Symboled'affectation

Valeur initialeaffectée à la

donnée

Le type esttoujours

précédé du signe :

Initialisation (avec déclaration)

Le type CHAINE

Opérations élémentaires

nom_de_la_donnee <-- “valeur”

nom de la donnée

affectation

valeur

Nom de la donnéeaffectée

Symboled'affectation

Valeuraffectéeà la donnée

Affectation (hors déclaration)

Le type CHAINE

Opérations élémentaires

autre_donnee <-- nom_de_la_donnee

nom d'une donnée

affectation

nom d'une donnée

Nom d'une autredonnéeaffectée à

l'aide d'une donnée

Symboled'affectation

Nom d'unedonnée

Utilisation

Le type CHAINE

Opérations élémentaires

nom_de_la_donnee : BOOLEEN

nom de la donnée

type élémentaire

Nom attribué à la donnéedéclarée

Le type esttoujours

précédé du signe :

Déclaration

Le type BOOLEEN

Opérations élémentaires

29/11/2013

11

nom_de_la_donnee <-- valeur : BOOLEEN

nom de la donnée

affectation

valeur d'initialisation

type élémentaire

Nom attribué à la donnéeinitialisée

Symboled'affectation

Valeur initialeaffectée à la

donnée

Le type esttoujours

précédé du signe :

Initialisation (avec déclaration)

Le type BOOLEEN

Opérations élémentaires

nom_de_la_donnee <-- valeur

nom de la donnée

affectation

valeur

Nom de la donnéeaffectée

Symbole d'affectation

Valeuraffectéeà la donnée

Affectation (hors déclaration)

Le type BOOLEEN

Opérations élémentaires

autre_donnee <-- nom_de_la_donnee

nom d'une donnée

affectation

nom d'une donnée

Nom d'une autredonnéeaffectée à

l'aide d'une donnée

Symboled'affectation

Nom d'unedonnée

Utilisation

Le type BOOLEEN

Opérations élémentaires

nom_de_la_donnee <-- nom_de_la_donnee + 1

nom de la donnée

affectation

nom de la même donnée

opération

Nom de la donnée

ré-affectée

Symboled'affectation

Nom de la donnée

ré-affectée

Opération lorsde l'affectation

Ré-affectation

* ATTENTION ! valeur FAUXcorrespond à la valeur 0, et toute autre valeur entière d’un octet correspond à la valeur VRAI.

Le type BOOLEEN

Opérations élémentaires

29/11/2013

12

Catégories de données et opérations associées

Constantes ou variables

� Les Constantes : CONST

� Déclaration avec initialisation obligatoire

� Utilisation (lecture seule)

� Les Variables : VAR

� Déclaration

� Initialisation dans la déclaration

� Affectation (écriture)

� Utilisation

� Ré-affectation

Opérations élémentaires

Questions

Miloud RACHED Année universitaire 2013-2014

Types et déclarations

Bibliographie

L'algorithmique : Votre passeport informatique pour la programmation (Broché) de Bruno Warin

The C programming Language, Brian W. Kernighan, Dennis M. Ritchie

Programmation : concepts, techniques et modèles, Peter Van Roy, Seif Haridi

Types et déclarations