22
Algorithmes et structures de données Cours 3 Patrick Reuter http://www.labri.fr/~preuter

Algorithmes et structures de données Cours 3 Patrick Reuter preuter

Embed Size (px)

Citation preview

Page 1: Algorithmes et structures de données Cours 3 Patrick Reuter preuter

Algorithmes et structures de données

Cours 3

Patrick Reuter

http://www.labri.fr/~preuter

Page 2: Algorithmes et structures de données Cours 3 Patrick Reuter preuter

Variables

• Permet de stocker des données au cours d’un algorithme

Structure de données la plus élémenataire

• Caractérisé par leur nom et leur type

Page 3: Algorithmes et structures de données Cours 3 Patrick Reuter preuter

Variables

Caractérisé par leur nom et leur type• Nom :

xyzipointsJoueur1pointsJoueur2somme

Page 4: Algorithmes et structures de données Cours 3 Patrick Reuter preuter

Ingrédients d’algorithmes

• Affectation

• Condition/Comparaison

• Structure de contrôle– Branchements conditionnels (multiples)– Boucles

• Bloc d’instruction

• Appel de fonction

Page 5: Algorithmes et structures de données Cours 3 Patrick Reuter preuter

Ingrédients d’algorithmes• Affectation

x← 10;y := 30;z = x;

Page 6: Algorithmes et structures de données Cours 3 Patrick Reuter preuter

Faire tourner un algorithme

Affectation

x := 10;y := 30;z := x;x := 20

x

10

20

y

30

Chaque variable une colonne

z

10

Page 7: Algorithmes et structures de données Cours 3 Patrick Reuter preuter

Ingrédients d’algorithmes

• Comparaison

a = 7points > meilleurpoints absent = FAUXmalade = VRAI OU vacances = VRAIa=7 ET b=5

- Note:

- Le résultat d’une condition/comparaison peut être uniquement soit VRAI, soit FAUX

Page 8: Algorithmes et structures de données Cours 3 Patrick Reuter preuter

Ingrédients d’algorithmes

• Structure de contrôle– Branchements conditionnels

SI <condition> ALORS<bloc d’instructions>

[SINON<bloc d’instructions>]

Exemple :a := 3;b := 4;c := 10;SI a >b ALORS c := 20;SINON c := 5;

Page 9: Algorithmes et structures de données Cours 3 Patrick Reuter preuter

Ingrédients d’algorithmes

• Structure de contrôle– Branchements conditionnels

SI <condition> ALORS<bloc d’instructions>

SINON<bloc d’instructions>

Exemple :a := 3;b := 4;c := 10;SI a >b ALORS c := 20;SINON c := 5;

b

4

Chaque variable une colonne

c

105

a

3

Page 10: Algorithmes et structures de données Cours 3 Patrick Reuter preuter

Ingrédients d’algorithmes• Structure de contrôle

– Branchements conditionnels

SI (mois = 1) ALORS nom := "Janvier" ;

SINON si (mois = 2) ALORS nom := "Février";

SINON si (mois = 3) ALORS nom := "Mars";

SINON si (mois = 4) ALORS nom := "Avril";

SINON si (mois = 5) ALORS nom := "Mai";

SINON si (mois = 6) ALORS nom := "Juin";

……

SINON si (mois = 12) ALORS nom := "Décembre";

SINONafficher('Erreur dans le mois') ;

Page 11: Algorithmes et structures de données Cours 3 Patrick Reuter preuter

Ingrédients d’algorithmes

• Structure de contrôle– Branchements conditionnels multiples

– CAS mois DE     1: nom := "Janvier" ;     2: nom := "Février";     3: nom := "Mars";     4: nom := "Avril" ;     5: nom := "Mai" ;

….     12: nom := "Décembre" ;

   AUTREMENT     afficher('Erreur dans le mois') ; FIN CAS;

Page 12: Algorithmes et structures de données Cours 3 Patrick Reuter preuter

Calculer 5

Σ i i=1

affecter la variable somme avec ce terme.

Page 13: Algorithmes et structures de données Cours 3 Patrick Reuter preuter

Calculer : somme := 1 + 2 + 3 + 4 + 5;

Page 14: Algorithmes et structures de données Cours 3 Patrick Reuter preuter

somme :=0;i:=1;

somme := somme + i;i:=i+1;

somme := somme + i;i:=i+1;

somme := somme + i;i:=i+1;

somme := somme + i;i:=i+1;

somme := somme + i;i:=i+1;

Page 15: Algorithmes et structures de données Cours 3 Patrick Reuter preuter

somme :=0;i:=1;

somme := somme + i;i:=i+1;

somme := somme + i;i:=i+1;

somme := somme + i;i:=i+1;

somme := somme + i;i:=i+1;

somme := somme + i;i:=i+1;

somme

0

1

3

6

10

15

i

1

2

3

4

5

6

Page 16: Algorithmes et structures de données Cours 3 Patrick Reuter preuter

Ingrédients d’algorithmes

• Structure de contrôle– Boucle

Définition :

Suite d’instructions qui peut être exécuté plusieurs fois (itération)

Page 17: Algorithmes et structures de données Cours 3 Patrick Reuter preuter

Ingrédients d’algorithmes

• Structure de contrôle– Boucle

TANT QUE <condition> FAIRE

<bloc d’instructions>

FIN TANT QUE

Page 18: Algorithmes et structures de données Cours 3 Patrick Reuter preuter

somme :=0;i:=1;

somme := somme + i;i:=i+1;

somme := somme + i;i:=i+1;

somme := somme + i;i:=i+1;

somme := somme + i;i:=i+1;

somme := somme + i;i:=i+1;

somme

0

1

3

6

10

15

i

1

2

3

4

5

6

Page 19: Algorithmes et structures de données Cours 3 Patrick Reuter preuter

somme :=0;i:=1;

somme := somme + i;i:=i+1;

somme := somme + i;i:=i+1;

somme := somme + i;i:=i+1;

somme := somme + i;i:=i+1;

somme := somme + i;i:=i+1;

somme

0

1

3

6

10

15

i

1

2

3

4

5

6

Page 20: Algorithmes et structures de données Cours 3 Patrick Reuter preuter

somme :=0;i:=1;

somme := somme + i;i:=i+1;

somme := somme + i;i:=i+1;

somme := somme + i;i:=i+1;

somme := somme + i;i:=i+1;

somme := somme + i;i:=i+1;

somme :=0;i:=1;

TANT QUE <condition> FAIRE

somme := somme + i;i:=i+1;

FIN TANT QUE

Page 21: Algorithmes et structures de données Cours 3 Patrick Reuter preuter

somme :=0;i:=1;

somme := somme + i;i:=i+1;

somme := somme + i;i:=i+1;

somme := somme + i;i:=i+1;

somme := somme + i;i:=i+1;

somme := somme + i;i:=i+1;

somme :=0;i:=1;

TANT QUE i <= n FAIRE

somme := somme + i;i:=i+1;

FIN TANT QUE

Page 22: Algorithmes et structures de données Cours 3 Patrick Reuter preuter

somme

0

1

3

6

10

15

i

1

2

3

4

5

6

somme :=0;i:=1;

TANT QUE i <= 5 FAIRE

somme := somme + i;i:=i+1;

FIN TANT QUE