La présentation est en train de télécharger. S'il vous plaît, attendez

La présentation est en train de télécharger. S'il vous plaît, attendez

Structures complexes Pr ZEGOUR DJAMEL EDDINE

Présentations similaires


Présentation au sujet: "Structures complexes Pr ZEGOUR DJAMEL EDDINE"— Transcription de la présentation:

1 Structures complexes Pr ZEGOUR DJAMEL EDDINE
Ecole Supérieure d’Informatique (ESI)

2 Structures complexes : Introduction
On distingue deux types d’enregistrement (structure) : - Structure simple : ensemble de champs de type simple (ENTIER, BOOLEEN, CAR, CHAINE) - Structure complexe : ensemble de champs de type simple ou de champ de type TABLEAU à une dimension de type simple

3 Structures complexes : Représentation en mémoire
Exemple : Type simple Type simple Structure complexe Descriptif d’un tableau Type simple Tableau Éléments de la structure complexe

4 Structures complexes : Déclarations
Types dans {Entier, Booleen, Car, Chaine} Sep dans {:, Un, Une, Des} Cste désigne une constante numérique entière Chaîne : chaîne de caractères Idf désigne un identificateur Opr dans { <, <=, >, >=, =, <> } Opa dans { +, -, Ou } Opm dans { *, /, Et } Sign dans {+, -} Tableau est synonyme de Vecteur Init_tableau est synonyme de Init_vecteur

5 Structures complexes : Déclarations
<Algo Z>  [ ~Soit|Soient~ <Ps> ] Debut <Lis> Fin [;] { ~<Act> | <Fonct>~ [;] }* <Act>  Action Idf [ ( <Li> ) ] [;] [ ~Soit|Soient~ <Ps> ] Debut <Lis> Fin <Fonct>  Fonction Idf ( <Li> ) : <Typ> [ ~Soit|Soient~ <Ps> ] Debut <Lis> Fin <Ps>  <S>;{ [~Soit|Soient~] <S>;}* <S>  <Li>[Sep ~<Typ>|~Action|Fonction(<Typ>)~ ~] <Li>  Idf {, Idf}*

6 Structures complexes : Déclarations
<Typ>  Types | <Structsimple> | Tableau(<Lc>)[De~<Structsimple>|Types~ ] <Structsimple>  [Structure ](Types {, Types }*) <Lc>  Cste {, Cste}*    <Structcomplexe> | <Structcomplexe> [Structure ] ( ~ Types | Vecteur(Cste) De Types ~ {, ~ Types | Vecteur(Cste) De Types ~ }*)

7 Structures complexes : Instructions
< Lis >  < Inst > { ; < Inst > }* <Inst>  Idf := <Exp> |   Lire ( Idf {, Idf }* ) |   Ecrire (<Exp> {,<Exp>}* ) | Tantque <Exp> [ : ] <Lis> Fintantque | Si <Exp> [:] <Lis> [Sinon <Lis>] Fsi | Pour Idf:= <Exp>,<Exp> [, <Exp>][:] <Lis> Finpour | Appel Idf [(Exp {,<Exp>}*)] |

8 Structures complexes : Instructions
<Inst>  ~ Init_vecteur | Init_struct ~ ( Idf , [[ ~<Exp>|[[<Exp> {, <Exp>}*]] ~ {, ~<Exp>|[[<Exp> {, <Exp>}*]]~}* ]] ) | Aff_element ( <Exp> [[ <Exp> {, <Exp> }* ] ,<Exp> ) | Aff_struct(Idf, Cste, <Exp>)

9 Structures complexes : Expressions
<Exp>  <Exps>[ Opr <Exps>] <Exps>  [Sign] <Terme> { Opa <Terme> }* <Terme>  <Facteur>{Opm <Facteur>}* <Facteur>  Idf [(Exp {,<Exp>}*)] | Cste | ( <Exp>) | <Fonct> | Non <Facteur> | Vrai | Faux | Chaine  <Fonct>  Element ( <Fonct> [[ <Exp> {, <Exp> }* ]] ) | Struct ( Idf, Cste)

10 Sémantique des structures complexes : Fonctions sémantiques
<Structcomplexe> [Structure ] ( ~ Types | Vecteur(Cste) De Types ~ {, ~ Types | Vecteur(Cste) De Types ~ }*) Fonctions sémantiques et Descriptions à trouver Fx Description < Structcomplexe>

11 Sémantique des structures complexes : Exemple
‘Ds’ ‘Dt’ 2 1 ‘Init_v’ 3 ‘Aff_st’ 5 7 ‘L’ 1 7 ‘C’ 3 5 2 4 6 soit s une structure(entier, vecteur(3) de booleen, chaine); v un vecteur(3) de booleen; debut init_vecteur(v,[ vrai, faux,vrai]); aff_struct(s, 1, 1); aff_struct(s, 2, v); aff_struct(s, 3,'abc'); fin 1 1 2 2 3 3 4 5 Quadruplés générés 6 7 TABOB LONGZDD 2 TABTYP (EV3BS) TABCOMP 1 TABCONS ‘3’,’Vrai’,’Faux’,’1’,’2’, ‘abc’ 3,4,3 1


Télécharger ppt "Structures complexes Pr ZEGOUR DJAMEL EDDINE"

Présentations similaires


Annonces Google