les algorithmes dans l’histoire des définitions d’un algorithme...

92
Enseigner l’algorithmique en lycée 12 et 13 Décembre 2011 Institut Saint-Cassien Les algorithmes dans l’histoire Les structures de bases de l’algorithmique Les premiers pas avec AlgoBox Des définitions d’un algorithme Un premier algorithme Algorithme et langages de programmation 1

Upload: others

Post on 05-Aug-2020

2 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Les algorithmes dans l’histoire Des définitions d’un algorithme …algolycee.free.fr/.../Algorithmique_Formiris_2011.pdf · 2012-09-08 · 12 et 13 décembre 2011 21 la suite

Enseigner l’algorithmique en lycée 12 et 13 Décembre 2011Institut Saint-Cassien

Déroulement

• Les algorithmes dans l’histoire

• Les structures de bases de l’algorithmique

• Les premiers pas avec AlgoBox

• Des définitions d’un algorithme

• Un premier algorithme

• Algorithme et langages de programmation

1

Page 2: Les algorithmes dans l’histoire Des définitions d’un algorithme …algolycee.free.fr/.../Algorithmique_Formiris_2011.pdf · 2012-09-08 · 12 et 13 décembre 2011 21 la suite

Enseigner l’algorithmique en lycée 12 et 13 Décembre 2011Institut Saint-Cassien

• Une présentation de plusieurs logiciels àcaractère pédagogique

• Un bilan des 2 journées

• Des activités pour la classe de Seconde

• Des prolongements pour les classes dePremière et de Terminale

• Les différents langages informatiques

• Une galerie de « portraits »

2

Déroulement

• Ce que « disent » les programmesofficiels

• Des « conseils » pédagogiques

Page 3: Les algorithmes dans l’histoire Des définitions d’un algorithme …algolycee.free.fr/.../Algorithmique_Formiris_2011.pdf · 2012-09-08 · 12 et 13 décembre 2011 21 la suite

Enseigner l’algorithmique en lycéeInstitut Saint-Cassien

Les algorithmes dans l’histoire

12 et 13 Décembre 2011

3

• Les algorithmes ne sont pas nés avec l’informatique :

L’algorithme d’Euclide pour calculer le PGCD de deux entiersest vieux de plus de 2000 ans !

Des descriptions précises d’algorithmes sont présents dansla Chine ancienne.(Par exemple, pour extraire des racines carrées à partir dedivisions effectuées sur une « surface à calculer »)

• L’ origine du mot « algorithme » est lié au nom du savant arabe du IXe

siècle : Al-Khwarizmi.

Ce savant arabe a publié plusieurs méthodes pour le calcul effectif deracines d’une équation du second degré et grâce à lui les chiffres arabes ontpu se diffuser en occident.

Historique

Page 4: Les algorithmes dans l’histoire Des définitions d’un algorithme …algolycee.free.fr/.../Algorithmique_Formiris_2011.pdf · 2012-09-08 · 12 et 13 décembre 2011 21 la suite

Enseigner l’algorithmique en lycéeInstitut Saint-Cassien

des définitions d’un algorithme

12 et 13 Décembre 2011

4

• Des définitions plus « modernes » d’un algorithme:

Une définition simple :« Un ensemble d’instructions pour résoudre un problème. »

Une définition plus complète à partir de 5 propriétés : (selon Knuth)

Finitude : Un algorithme doit toujours se terminer après un nombre finid’étapes.

Précision : Chaque étape d’un algorithme doit être définie précisément; lesactions à transposer doivent être spécifiées rigoureusement et sans ambiguïtépour chaque cas.

Entrées : Quantités, prises dans un ensemble d’objets spécifié, qui sont donnéesà l’algorithme avant qu’il ne commence.

Sorties : Quantités qui ont une relation spécifiée avec les entrées.

Rendement : Toutes les opérations que l’algorithme doit accomplir doivent êtresuffisamment élémentaires pour pouvoir être en principe réalisées dans une duréefinie par un homme utilisant du papier et un crayon.

Définitions

Page 5: Les algorithmes dans l’histoire Des définitions d’un algorithme …algolycee.free.fr/.../Algorithmique_Formiris_2011.pdf · 2012-09-08 · 12 et 13 décembre 2011 21 la suite

Enseigner l’algorithmique en lycéeInstitut Saint-Cassien

Algorithme et langage de programmation

12 et 13 Décembre 2011

5

• Algorithme et langage de programmation

Un algorithme est rédigé dans un pseudo-langage (en Français).

Il peut ensuite être implémenté dans un langage de programmation donné.

En quoi a-t-on besoin d’un langage spécial, distinct des langages deprogrammation compréhensibles par les ordinateurs ?

Parce que l’algorithmique exprime les instructions résolvant un problèmedonné indépendamment des particularités de tel ou tel langage.Pour prendre une image, si un programme était une dissertation,l’algorithmique serait le plan, une fois mis de côté la rédaction etl’orthographe. Or, vous savez qu’il vaut mieux faire d’abord le plan et rédigerensuite que l’inverse…

Apprendre l’algorithmique, c’est apprendre à manier la structure logique d’unprogramme informatique.

Algorithme et langage de programmation

Page 6: Les algorithmes dans l’histoire Des définitions d’un algorithme …algolycee.free.fr/.../Algorithmique_Formiris_2011.pdf · 2012-09-08 · 12 et 13 décembre 2011 21 la suite

Enseigner l’algorithmique en lycéeInstitut Saint-Cassien

Structures de bases d’un algorithme

12 et 13 Décembre 2011

6

Les 3 étapes d’un algorithme

Les entrées (ou la déclaration et la saisie des données) Le traitement Les sorties (ou l’affichage / l’impression des données transformées)

• Les entrées

Il s’agit de repérer les données nécessaires à la résolution du problème.Ces données peuvent être numériques, ou sous forme de textes (on dit souventchaines de caractères), ou de type logique (deux valeurs possibles, vrai ou faux),ou enfin de type graphique (des points).

Dans cette phase peut aussi figurer ce qu’on appelle l’entrée des données, qui peutse manifester par la saisie de caractères ou de nombres sur le clavier, ou lalecture de la position du pointeur de la souris, ou encore par la lecture d’un fichiercontenant ces nombres ou caractères.

6

Les 3 étapes d’un algorithme : les entrées

Page 7: Les algorithmes dans l’histoire Des définitions d’un algorithme …algolycee.free.fr/.../Algorithmique_Formiris_2011.pdf · 2012-09-08 · 12 et 13 décembre 2011 21 la suite

Enseigner l’algorithmique en lycéeInstitut Saint-Cassien

Structures de bases d’un algorithme

12 et 13 Décembre 2011

7

Les 3 étapes d’un algorithme

Les entrées (ou la déclaration et la saisie des données) Le traitement Les sorties (ou l’affichage / l’impression des données transformées)

• Le traitement

Il s’agit de déterminer toutes les étapes des traitements à faire et donc des"instructions" à donner pour une exécution automatique.

Si ces instructions s’exécutent en séquence, on parle d’algorithme séquentiel.Si les opérations s’exécutent sur plusieurs processeurs en parallèle, on parled’algorithme parallèle. Si les taches s’exécutent sur un réseau de processeurs onparle d’algorithme réparti ou distribué.Nous ne traiterons ici que des algorithmes séquentiels.

7

Les 3 étapes d’un algorithme : le traitement

Page 8: Les algorithmes dans l’histoire Des définitions d’un algorithme …algolycee.free.fr/.../Algorithmique_Formiris_2011.pdf · 2012-09-08 · 12 et 13 décembre 2011 21 la suite

Enseigner l’algorithmique en lycéeInstitut Saint-Cassien

Structures de bases d’un algorithme

12 et 13 Décembre 2011

8

Les 3 étapes d’un algorithme

Les entrées (ou la déclaration et la saisie des données) Le traitement Les sorties (ou l’affichage / l’impression des données transformées)

• Les sorties

Les résultats obtenus peuvent être affichés sur l’écran, ou imprimés sur papier, oubien encore conservés dans un fichier.

Les 3 étapes d’un algorithme : les sorties

Page 9: Les algorithmes dans l’histoire Des définitions d’un algorithme …algolycee.free.fr/.../Algorithmique_Formiris_2011.pdf · 2012-09-08 · 12 et 13 décembre 2011 21 la suite

Enseigner l’algorithmique en lycéeInstitut Saint-Cassien

Structures de bases d’un algorithme

12 et 13 Décembre 2011

9

Les 3 étapes d’un algorithme

Les entrées (ou la déclaration et la saisie des données) Le traitement Les sorties (ou l’affichage / l’impression des données transformées)

• Un exemple simpleOn se donne deux points A et B du plan.

a. Tracer le cercle de centre A passant par B.b. Tracer le cercle de centre B passant par A.c. Nommer C et D les points d’intersection de cescercles.

Construire le polygone ADBC.

Cet algorithme décrit la constructiond’un losange dont une diagonale est[AB].

Les entrées sont les points A et B.

Le traitement de la construction estdécrit dans les phases a. b. et c.

La sortie est le polygone ADBC.

9

Les 3 étapes d’un algorithme : un exemple simple

Page 10: Les algorithmes dans l’histoire Des définitions d’un algorithme …algolycee.free.fr/.../Algorithmique_Formiris_2011.pdf · 2012-09-08 · 12 et 13 décembre 2011 21 la suite

Enseigner l’algorithmique en lycéeInstitut Saint-Cassien

Structures de bases d’un algorithme

12 et 13 Décembre 2011

10

Les 3 briques de base pour écrire les instructions du traitement

1. Affectation de variables

2. Structure alternative (Si … Alors …. Sinon)

3. Structures répétitives (« Boucles » Pour et Tant Que)

10

Les 3 briques de base

Page 11: Les algorithmes dans l’histoire Des définitions d’un algorithme …algolycee.free.fr/.../Algorithmique_Formiris_2011.pdf · 2012-09-08 · 12 et 13 décembre 2011 21 la suite

Enseigner l’algorithmique en lycéeInstitut Saint-Cassien

Structures de bases d’un algorithme

12 et 13 Décembre 2011

11

1. Affectation de variables

Les données de l’algorithme peuvent être stockées dans des variables ou« mémoires ».

Ces données sont représentées par un nom (un identificateur).

Les identificateurs sont des suites de lettres et chiffres (sans espaces) quidoivent être choisies judicieusement pour que l’algorithme soitimmédiatement lisible et interprétable.

Les données peuvent avoir un type : numériques chaines de caractères booléen (Vrai ou Faux) listes (numériques ou de chaînes de caractères)

11

Affectation de variables : identificateur

Page 12: Les algorithmes dans l’histoire Des définitions d’un algorithme …algolycee.free.fr/.../Algorithmique_Formiris_2011.pdf · 2012-09-08 · 12 et 13 décembre 2011 21 la suite

Enseigner l’algorithmique en lycéeInstitut Saint-Cassien

Structures de bases d’un algorithme

12 et 13 Décembre 2011

12

1. Affectation de variables

Exemples d’affectation d’une variable :

A 2 : La variable nommée A prend pour valeur 2 quel que soitsa valeur précédente

Compteur Compteur + 1 : La variable nommée Compteur prend pourvaleur la valeur courante de Compteur + 1

(Attention ! : ce n’est pas une équation !)

C 2D 3E C + D : à la fin des 3 instructions E a pour valeur 5.

12

Affectations de variables : exemples d’affectation

Page 13: Les algorithmes dans l’histoire Des définitions d’un algorithme …algolycee.free.fr/.../Algorithmique_Formiris_2011.pdf · 2012-09-08 · 12 et 13 décembre 2011 21 la suite

Enseigner l’algorithmique en lycéeInstitut Saint-Cassien

Structures de bases d’un algorithme

12 et 13 Décembre 2011

13

1. Affectation de variables

Exercice : proposer un algorithme qui permute les contenus de deuxvariables numériques.

Réponse :

Temp A On utilise une variable temporaire nommée ici TempA BB Temp

13

Affectation de variables : exemple : permutation de variables

Page 14: Les algorithmes dans l’histoire Des définitions d’un algorithme …algolycee.free.fr/.../Algorithmique_Formiris_2011.pdf · 2012-09-08 · 12 et 13 décembre 2011 21 la suite

Enseigner l’algorithmique en lycéeInstitut Saint-Cassien

Structures de bases d’un algorithme

12 et 13 Décembre 2011

14

2. Structure alternative

Si condition alorstraitement 1

Sinontraitement 2

FinSi

Remarque :L’évaluation de la condition est un booléen (qui a pour valeur Vrai ouFaux).

Exemple :

Si N > 10 alorsAfficher « Le nombre » + N + « est strictement supérieur à 10 »

SinonAfficher « Le nombre » + N + « est inférieur ou égal à 10 »

FinSi14

Structure alternative

Page 15: Les algorithmes dans l’histoire Des définitions d’un algorithme …algolycee.free.fr/.../Algorithmique_Formiris_2011.pdf · 2012-09-08 · 12 et 13 décembre 2011 21 la suite

Enseigner l’algorithmique en lycéeInstitut Saint-Cassien

Structures de bases d’un algorithme

12 et 13 Décembre 2011

15

3. Structures répétitives : boucle Pour

Pour I = 1 à N Fairetraitement

I Suivant

On effectue les instructions nommées « traitement» N fois.

Exemple : Que fait cet algorithme ?

Pour I = 1 à 10 FaireAfficher I*I

I Suivant

Réponse : Cet algorithme affiche tous les carrés des entiers naturelscompris entre 1 et 10.

15

Structures répétitives : boucle pour

Page 16: Les algorithmes dans l’histoire Des définitions d’un algorithme …algolycee.free.fr/.../Algorithmique_Formiris_2011.pdf · 2012-09-08 · 12 et 13 décembre 2011 21 la suite

Enseigner l’algorithmique en lycéeInstitut Saint-Cassien

Structures de bases d’un algorithme

12 et 13 Décembre 2011

16

3. Structures répétitives : boucle « Tant que »

Tant que condition Fairetraitement

FinTantQueOn effectue les instructions nommées « traitement» tant que la condition est

vérifiée.

Exemple : Que fait cet algorithme ?I 1Tant que I < 100 Faire

Afficher II I + 2

FinTantQue

Réponse : Cet algorithme affiche tous les entiers naturels impairscompris entre 1 et 100.

16

Structures répétitives : boucle Tant Que

Page 17: Les algorithmes dans l’histoire Des définitions d’un algorithme …algolycee.free.fr/.../Algorithmique_Formiris_2011.pdf · 2012-09-08 · 12 et 13 décembre 2011 21 la suite

Enseigner l’algorithmique en lycéeInstitut Saint-Cassien

Structures de bases d’un algorithme

12 et 13 Décembre 2011

17

3. Structures répétitives : boucle « Répéter … Jusqu’à …. »

Répétertraitement

Jusqu’ à Condition

On effectue les instructions nommées « traitement» jusqu’ à ce que la conditionne soit plus vérifiée.

17

Structures répétitives : boucle répéter

Page 18: Les algorithmes dans l’histoire Des définitions d’un algorithme …algolycee.free.fr/.../Algorithmique_Formiris_2011.pdf · 2012-09-08 · 12 et 13 décembre 2011 21 la suite

Enseigner l’algorithmique en lycéeInstitut Saint-Cassien

Un premier algorithme

12 et 13 Décembre 2011

18

La suite de Syracuse

Présentation du problème :

La suite de Syracuse d'un nombre entier N est définie par récurrence, de lamanière suivante :

• u0 = N• Pour tout entier n naturel :

si un est pair alors un+1 = un/2; si un est impair alors un+1 = 3un + 1

On se propose d’écrire un algorithme en « pseudo-code » qui en entrée lit l’entierN, calcule et affiche les 5 premiers termes de cette suite.

18

La suite de Syracuse : présentation du problème

Page 19: Les algorithmes dans l’histoire Des définitions d’un algorithme …algolycee.free.fr/.../Algorithmique_Formiris_2011.pdf · 2012-09-08 · 12 et 13 décembre 2011 21 la suite

Enseigner l’algorithmique en lycéeInstitut Saint-Cassien

Un premier algorithme

12 et 13 Décembre 2011

19

La suite de Syracuse

Algorithme : suite de Syracuse

DonnéesN : entierI : indice

TraitementLire N

Pour I = 1 à 5

Afficher N

Si N est pair alors

N N/2

Sinon

N 3*N+1

FinSi

FinPour

Premier terme de la suiteIndice du terme courant de la suite un

On demande la saisie de l’entier N

On effectue une boucle avec 5 itérations.

On affiche le terme courant de la suite.

On teste la parité du terme courant de la suite.

On calcule le terme suivant de la suivant selon le

résultat du test de parité.

19

La suite de Syracuse : algorithme

Page 20: Les algorithmes dans l’histoire Des définitions d’un algorithme …algolycee.free.fr/.../Algorithmique_Formiris_2011.pdf · 2012-09-08 · 12 et 13 décembre 2011 21 la suite

Enseigner l’algorithmique en lycéeInstitut Saint-Cassien

Les premiers pas avec AlgoBox

12 et 13 Décembre 2011

20

La suite de Syracuse avec AlgoBox

20

La suite de Syracuse avec AlgoBox

Page 21: Les algorithmes dans l’histoire Des définitions d’un algorithme …algolycee.free.fr/.../Algorithmique_Formiris_2011.pdf · 2012-09-08 · 12 et 13 décembre 2011 21 la suite

Enseigner l’algorithmique en lycéeInstitut Saint-Cassien

Les premiers pas avec AlgoBox

12 et 13 Décembre 2011

21

La suite de Syracuse avec AlgoBox

Programme AlgoBox :

1 VARIABLES2 N EST_DU_TYPE NOMBRE3 I EST_DU_TYPE NOMBRE4 DEBUT_ALGORITHME5 LIRE N6 POUR I ALLANT_DE 1 A 57 DEBUT_POUR8 AFFICHER N9 SI (N % 2 == 0) ALORS10 DEBUT_SI11 N PREND_LA_VALEUR N/212 FIN_SI13 SINON14 DEBUT_SINON15 N PREND_LA_VALEUR 3*N+116 FIN_SINON17 FIN_POUR18 FIN_ALGORITHME

21

La suite de Syracuse : Programme AlgoBox

Page 22: Les algorithmes dans l’histoire Des définitions d’un algorithme …algolycee.free.fr/.../Algorithmique_Formiris_2011.pdf · 2012-09-08 · 12 et 13 décembre 2011 21 la suite

Enseigner l’algorithmique en lycéeInstitut Saint-Cassien

Les premiers pas avec AlgoBox

12 et 13 Décembre 2011

22

La suite de Syracuse avec AlgoBox

• Tester l’algorithme avec différentes valeurs de N.

• Modifier l’algorithme pour afficher les 20 premiers termes de la suite.

• Quelle conjecture peut-on émettre sur la suite de Syracuse ?

Réponse :

Quel que soit le nombre N de départ, la suite de Syracuse admet un

terme qui a pour valeur 1.

22

La suite de Syracuse : tests et conjecture

Page 23: Les algorithmes dans l’histoire Des définitions d’un algorithme …algolycee.free.fr/.../Algorithmique_Formiris_2011.pdf · 2012-09-08 · 12 et 13 décembre 2011 21 la suite

Enseigner l’algorithmique en lycéeInstitut Saint-Cassien

Les premiers pas avec AlgoBox

12 et 13 Décembre 2011

23

La suite de Syracuse avec AlgoBox

Modifier l’algorithme précédent pour s’arrêter au premier terme de la suite égal à 1 et

coder le programme AlgoBox correspondant.

Algorithme : suite de Syracuse (version 2)

DonnéesN : entierI : indice

TraitementLire NTant que N <> 1 Faire

Afficher NSi N est pair alors

N N/2Sinon

N 3*N+1FinSi

FinTantQue

Premier terme de la suiteIndice du terme courant de la suite un

On demande la saisie de l’entier NOn effectue une boucle avec un test d’arrêt.On affiche le terme courant de la suite.On teste la parité du terme courant de la suite.On calcule le terme suivant de la suivant selon le résultatdu test de parité.

23

La suite de Syracuse : version 2

Page 24: Les algorithmes dans l’histoire Des définitions d’un algorithme …algolycee.free.fr/.../Algorithmique_Formiris_2011.pdf · 2012-09-08 · 12 et 13 décembre 2011 21 la suite

Enseigner l’algorithmique en lycéeInstitut Saint-Cassien

Les premiers pas avec AlgoBox

12 et 13 Décembre 2011

24

La suite de Syracuse avec AlgoBox

Suite de Syracuse (version 2) : programme AlgoBoxSuite_syracuse_V2 - 23.08.2010

1 VARIABLES2 N EST_DU_TYPE NOMBRE3 I EST_DU_TYPE NOMBRE4 DEBUT_ALGORITHME5 LIRE N6 TANT_QUE (N != 1) FAIRE7 DEBUT_TANT_QUE8 AFFICHER N9 SI (N % 2 == 0) ALORS10 DEBUT_SI11 N PREND_LA_VALEUR N/212 FIN_SI13 SINON14 DEBUT_SINON15 N PREND_LA_VALEUR 3*N+116 FIN_SINON17 FIN_TANT_QUE18 AFFICHER N19 FIN_ALGORITHME

24

La suite de Syracuse : programme Algobox Version 2

Page 25: Les algorithmes dans l’histoire Des définitions d’un algorithme …algolycee.free.fr/.../Algorithmique_Formiris_2011.pdf · 2012-09-08 · 12 et 13 décembre 2011 21 la suite

Enseigner l’algorithmique en lycéeInstitut Saint-Cassien

Les premiers pas avec AlgoBox

12 et 13 Décembre 2011

25

La suite de Syracuse avec AlgoBox

Quel est le risque encouru par le dernier algorithme ?

Réponse :

Si la conjecture de Syracuse est erronée il peut exister des entiers N tels queaucun terme de la suite de soit égal à 1.

Dans ce cas la condition N <> 1 de la boucle Tant Que sera toujours vraie et leprogramme bouclera indéfiniment !

InformationA ce jour, la conjecture de Syracuse n’est pas démontrée.

La suite de Syracuse : le risque !

Page 26: Les algorithmes dans l’histoire Des définitions d’un algorithme …algolycee.free.fr/.../Algorithmique_Formiris_2011.pdf · 2012-09-08 · 12 et 13 décembre 2011 21 la suite

Enseigner l’algorithmique en lycéeInstitut Saint-Cassien

Une galerie de portraits

12 et 13 Décembre 2011

26

Mathématicien, géographe, astrologue et astronomemusulman perse dont les écrits, rédigés en langue arabe,ont permis l'introduction de l'algèbre en Europe.

Il est à l'origine des mots « algorithme » (qui n'est autre queson nom latinisé: "algoritmi" [3]) et « algèbre » (issu d'uneméthode et du titre d'un de ses ouvrages) ou encore del'utilisation des chiffres arabesAl-Khawarizmi

(783 - 850)

Savant, philosophe et écrivain, il est l'inventeur d'une machinearithmétique nommée Pascaline.

Blaise Pascal(1623-1662)

Portraits : Al-Khawarizmi - Pascal

Page 27: Les algorithmes dans l’histoire Des définitions d’un algorithme …algolycee.free.fr/.../Algorithmique_Formiris_2011.pdf · 2012-09-08 · 12 et 13 décembre 2011 21 la suite

Enseigner l’algorithmique en lycéeInstitut Saint-Cassien

Une galerie de portraits

12 et 13 Décembre 2011

27

Fils unique d'un banquier, cet anglais, algébriste detalent, renoncera à une carrière prometteuse de savantpour consacrer sa vie à la construction d'un calculateurmécanique.Il est l'inventeur de la Machine à différences puis de laMachine Analytique.Charles Babbage

(1791-1871)

Fille du poète romantique Lord George Byron et d'unemathématicienne et féministe, épouse de William King (futurcomte de Lovelace), elle sera l'élève puis la collaboratrice deC. BABBAGE.Elle est aussi à l'origine du "Principe des machines à calculer".Un langage porte son prénom en mémoire de ses travaux.Augusta Ada King

Lady LOVELACE(1814-1852)

Portraits : Babbage et Lovelace

Page 28: Les algorithmes dans l’histoire Des définitions d’un algorithme …algolycee.free.fr/.../Algorithmique_Formiris_2011.pdf · 2012-09-08 · 12 et 13 décembre 2011 21 la suite

Enseigner l’algorithmique en lycéeInstitut Saint-Cassien

Une galerie de portraits

12 et 13 Décembre 2011

28

Mathématicien anglais, il publie en 1854 les Lois de lapensée. Dans ce livre, il décrit comment toute la logiquepeut être définie par un principe simple: le binaire.

George BOOLE(1815-1864)

28

JohnVon NEUMANN(1903-1957)

(Prononcer noy-man).Il a été l'un des personnages clés des débuts de l'informatique. Ilpublia de nombreux articles sur l'algèbre et la mécanique quantiqueavant de se consacrer à la construction d'ordinateurs et à lamodélisation mathématique de la réaction en chaîne de la bombe A.Ses "machines IAS" sont à l'origine de "l'Architecture VonNEUMANN", c'est à dire celle des ordinateurs tels que nous lesconnaissons.

Portraits : Boole et Von NEUMAN

Page 29: Les algorithmes dans l’histoire Des définitions d’un algorithme …algolycee.free.fr/.../Algorithmique_Formiris_2011.pdf · 2012-09-08 · 12 et 13 décembre 2011 21 la suite

Enseigner l’algorithmique en lycéeInstitut Saint-Cassien

Une galerie de portraits

12 et 13 Décembre 2011

29

Cette américaine, mobilisée comme auxiliaire dans la marineaméricaine fut affectée aux travaux de programmation etd'exploitation de l'ENIAC. Puis, devenue une grande spécialisede la programmation des ordinateurs, elle sera l'une desprincipales créatrices du COBOL.

Grace MurrayHOPPER(1906 - 1992)

29

Mathématicien anglais, maître-assistant à Cambridge dès23 ans. Il a conçu en 1936 une machine logique capablede résoudre tous les problèmes que l'on peut formuler entermes d'algorithmes.Pendant la guerre, il participera à la réalisation de laBombe, première machine électromécanique dedécryptage des messages codés avec l'EnigmaAllemande.Alan TURING

(1912 - 1954)

Portraits : Hopper et Turing

Page 30: Les algorithmes dans l’histoire Des définitions d’un algorithme …algolycee.free.fr/.../Algorithmique_Formiris_2011.pdf · 2012-09-08 · 12 et 13 décembre 2011 21 la suite

Enseigner l’algorithmique en lycéeInstitut Saint-Cassien

Une galerie de portraits

12 et 13 Décembre 2011

30

Cet ingénieur des laboratoires Bell, est l'auteur du langage C.En 1973, avec K. THOMPSON, il réécrira dans ce nouveaulangage le système d'exploitation UNIX.Dennis

RITCHIE(1941)

30

C'est l'un des pères de l'Internet. Encore étudiant del'université de Los Angeles, il fut l'un des auteurs du protocoleTCP/IP et développa avec une équipe de chercheurs lespremiers outils utilisant ce mode de communication. Il estaujourd'hui président de l'Internet Society qui surveille lesnouveaux standards d'Internet.Vinton G.

CERF(1943 - )

Portraits : Ritchie et Cerf

Page 31: Les algorithmes dans l’histoire Des définitions d’un algorithme …algolycee.free.fr/.../Algorithmique_Formiris_2011.pdf · 2012-09-08 · 12 et 13 décembre 2011 21 la suite

Enseigner l’algorithmique en lycéeInstitut Saint-Cassien

Une galerie de portraits

12 et 13 Décembre 2011

31

Créateur du langage C++ basé sur le langage Cmais en lui donnant une dimension de LangageOrienté Objet.

BjarneSTROUSTRUP(1950 - )

31

Portraits : Stroustrup et Gosling

James Gosling(1955 - )

Créateur du langage Java basé sur le langage C++.La particularité principale de Java est que leslogiciels écrits dans ce langage sont trèsfacilement portables sur plusieurs systèmesd’exploitation.

Page 32: Les algorithmes dans l’histoire Des définitions d’un algorithme …algolycee.free.fr/.../Algorithmique_Formiris_2011.pdf · 2012-09-08 · 12 et 13 décembre 2011 21 la suite

Enseigner l’algorithmique en lycéeInstitut Saint-Cassien

Une galerie de portraits

12 et 13 Décembre 2011

32

Ancien président (et fondateur avec P. ALLEN) de Microsoft.Cette société est à l'origine du MS-DOS, de Windows, duBasic-Microsoft puis de Visual Basic.

Bill GATES(1951 - )

Steve JOBS(1955 - 2011)

S. WOZNIAK (à gauche) et S. JOBS (à droite).Fondateurs de la société Apple.Après son éviction d'Apple S. JOBS créera la société Nextavant d'être rappelé pour redresser Apple.

32

Portraits : Gates et Jobs

Page 33: Les algorithmes dans l’histoire Des définitions d’un algorithme …algolycee.free.fr/.../Algorithmique_Formiris_2011.pdf · 2012-09-08 · 12 et 13 décembre 2011 21 la suite

Enseigner l’algorithmique en lycéeInstitut Saint-Cassien

Une galerie de portraits

12 et 13 Décembre 2011

33

RichardSTALLMAN(1953 - )

Fondateur du projet GNU, lancé en 1984 pour développer lesystème d'exploitation libre GNU et donner ainsi auxutilisateurs des ordinateurs la liberté de coopérer et decontrôler les logiciels qu'ils utilisent. Il est également lecréateur (entre autres) de l'éditeur Emacs et du compilateurgcc.

Travaillant maintenant aux Etats-Unis mais Finlandaisd'origine, il a construit en 1991 un nouveau systèmed'exploitation de type UNIX appelé Linux. Ayant choiside le diffuser suivant le principe des logiciels libres,Linus TORVALDS ne retire aucune royaltie de son travailsur le noyau Linux. Cela n'empêche pas sa popularité decroitre de jours en jours.

Linus TORVALDS(1969 -) 33

Portraits : Stallman et Torvalds

Page 34: Les algorithmes dans l’histoire Des définitions d’un algorithme …algolycee.free.fr/.../Algorithmique_Formiris_2011.pdf · 2012-09-08 · 12 et 13 décembre 2011 21 la suite

Enseigner l’algorithmique en lycéeInstitut Saint-Cassien

Une galerie de portraits

12 et 13 Décembre 2011

34

Larry Page(1973 - )

Sergey Brin(1973 - )

Créateurs du moteur de recherche Google.Ces deux jeunes brillants nord-américains ontlancé leur moteur de recherche en 1999.Ce mot vient du terme "googol" qui désigne unchiffre, un 1 suivi de 100 zéros, traduisantl'exhaustivité du moteur de recherche.

Mark Zuckerberg(1984 - )

Créateur de FacebookC'est en 2004 que la première version deFacebook voit le jour pour mettre enrelation les étudiants de Harvard.

34

Portraits : Page, Brin et Zuckerberg

Page 35: Les algorithmes dans l’histoire Des définitions d’un algorithme …algolycee.free.fr/.../Algorithmique_Formiris_2011.pdf · 2012-09-08 · 12 et 13 décembre 2011 21 la suite

Enseigner l’algorithmique en lycéeInstitut Saint-Cassien

Les différents langages informatiques

12 et 13 Décembre 2011

35

• Définition :Un langage informatique est destiné à décrire l'ensemble des actionsconsécutives qu'un ordinateur doit exécuter.

• Langage machine :langage utilisé par le processeur (code binaire, suite de 0 et de1) : peu compréhensible par un humain

• Langage assembleur :langage intermédiaire , proche du langage machine, mais plus« lisible » par un humain. (dépendant du processeur, donc nonportable)

Les différents langages informatiques

35

Langages info : machine-assembleur

Page 36: Les algorithmes dans l’histoire Des définitions d’un algorithme …algolycee.free.fr/.../Algorithmique_Formiris_2011.pdf · 2012-09-08 · 12 et 13 décembre 2011 21 la suite

Enseigner l’algorithmique en lycéeInstitut Saint-Cassien

Les différents langages informatiques

12 et 13 Décembre 2011

36

Les différents langages informatiques• Langages plus évolués

plus facilement compréhensible que le langage machine.portabilité : peut être implémenté facilement sur différentes machines

• Langages interprétés / langages compilés : définition• Un programme écrit dans un langage interprété a besoin d'un

programme auxiliaire (l'interpréteur) pour traduire au fur et à mesureles instructions du programme.

• Un programme écrit dans un langage dit "compilé" va être traduit unefois pour toutes par un programme annexe (le compilateur) afin degénérer un nouveau fichier qui sera autonome, c'est-à-dire qui n'auraplus besoin d'un programme autre que lui pour s'exécuter (on ditd'ailleurs que ce fichier est exécutable).

36

Langages info : interprétés/compilés 1

Page 37: Les algorithmes dans l’histoire Des définitions d’un algorithme …algolycee.free.fr/.../Algorithmique_Formiris_2011.pdf · 2012-09-08 · 12 et 13 décembre 2011 21 la suite

Enseigner l’algorithmique en lycéeInstitut Saint-Cassien

Les différents langages informatiques

12 et 13 Décembre 2011

37

Les différents langages informatiques

• Langages interprétés / langages compilés : comparaison

• Un programme écrit dans un langage compilé a comme avantage de neplus avoir besoin, une fois compilé, de programme annexe pours'exécuter.

• De plus, la traduction étant faite une fois pour toute, il est plus rapideà l'exécution.

• Toutefois il est moins souple qu'un programme écrit avec un langageinterprété car à chaque modification du fichier source (fichierintelligible par l'homme: celui qui va être compilé) il faudra recompilerle programme pour que les modifications prennent effet.

37

Langages info : interprétés/compilés 2

Page 38: Les algorithmes dans l’histoire Des définitions d’un algorithme …algolycee.free.fr/.../Algorithmique_Formiris_2011.pdf · 2012-09-08 · 12 et 13 décembre 2011 21 la suite

Enseigner l’algorithmique en lycéeInstitut Saint-Cassien

Les différents langages informatiques

12 et 13 Décembre 2011

38

Les différents langages informatiques

Langage Domaine d'applicationprincipal Compilé/interprété

ADA Le temps réél langage compiléBASIC Comme son nom l'indique... langage interprétéC Programmation système langage compilé

C++ Programmation systèmeobjet langage compilé

Cobol Gestion langage compiléFortran Calcul scientifique langage compilé

Java Programmation orientéeinternet langage intermédiaire

MATLAB Calcul mathématique langage interprétéMathematica Calcul mathématique langage interprétéLISP Intelligence artificielle langage intermédiaire

Quelques exemples de langages couramment utilisés

38

Langages info : exemples 1

Page 39: Les algorithmes dans l’histoire Des définitions d’un algorithme …algolycee.free.fr/.../Algorithmique_Formiris_2011.pdf · 2012-09-08 · 12 et 13 décembre 2011 21 la suite

Enseigner l’algorithmique en lycéeInstitut Saint-Cassien

Les différents langages informatiques

12 et 13 Décembre 2011

39

Les différents langages informatiques

Langage Domaine d'applicationprincipal Compilé/interprété

Pascal Enseignement langage compiléProlog Intelligence artificielle langage interprété

Perl Traitement de chaînes decaractères langage interprété

PythonEnseignementDomaine scientifiqueLangage de script

langage compiléà la volée

Quelques exemples de langages couramment utilisés

39

Langages info : exemples 2

Page 40: Les algorithmes dans l’histoire Des définitions d’un algorithme …algolycee.free.fr/.../Algorithmique_Formiris_2011.pdf · 2012-09-08 · 12 et 13 décembre 2011 21 la suite

Enseigner l’algorithmique en lycéeInstitut Saint-Cassien

Quelques conseils pédagogiques liés à mon « expérience »

12 et 13 Décembre 2011

40

Différents modes de présentation des activités algorithmiques

• Guidé : Algorithme à compléter.

• A interpréter : Que fait un algorithme donné ?

• Plus libre : Algorithme à concevoir par les élèves à partir d’unedescription.

• « A la main » : Faire « tourner » manuellement un algorithme donné.

• Evolutif : Faire évoluer un algorithme donné pour le généraliser oul’améliorer.

Modes de présentation des activités

Page 41: Les algorithmes dans l’histoire Des définitions d’un algorithme …algolycee.free.fr/.../Algorithmique_Formiris_2011.pdf · 2012-09-08 · 12 et 13 décembre 2011 21 la suite

Enseigner l’algorithmique en lycéeInstitut Saint-Cassien

Quelques conseils pédagogiques liés à mon « expérience »

12 et 13 Décembre 2011

41

Le type de travail demandé aux élèves

• Ponctuel : Un exercice court sur un seul algorithme.Un « défi » sous forme ludique.

• Dossier à constituer : Série d’algorithmes et de programmes àrestituer sur une période donnée concernant unthème particulier (géométrie plane en secondepar ex.)Exemple : Sur 7 semaines pendantl’accompagnement personnalisé entre deuxpériodes de vacances scolaires.

• Exposé : Sur un thème donné (Ex : jeux de hasard)Avec présentation multimédiaPartie algorithmique + historique +mathématiques.

Travail demandé aux élèves

Page 42: Les algorithmes dans l’histoire Des définitions d’un algorithme …algolycee.free.fr/.../Algorithmique_Formiris_2011.pdf · 2012-09-08 · 12 et 13 décembre 2011 21 la suite

Enseigner l’algorithmique en lycéeInstitut Saint-Cassien

Quelques conseils pédagogiques liés à mon « expérience »

12 et 13 Décembre 2011

42

Conseils sur les activités à proposer

• Avoir des objectifs peu ambitieux au départ.

• Privilégier les algorithmes qui présentent un intérêt certain.

• Avec l’expérience, présenter des activités qui mélangent plusieurs outilslogicielsPar exemple, GeoGebra + AlgoBox ou AlgoBox + XCas.

• Toujours inclure si possible la partie mathématique pure dans l’activitéproposée et faire percevoir l’utilisation d’un logiciel comme un simple outilde conjecture ou bien de confirmation d’un résultat théorique.

• Les activités de simulation liées à la loi des grands nombres sont à monavis les plus « spectaculaires » .(mise en correspondance d’une loi de probabilité avec une simulation).

Contenu des activités à proposer

Page 43: Les algorithmes dans l’histoire Des définitions d’un algorithme …algolycee.free.fr/.../Algorithmique_Formiris_2011.pdf · 2012-09-08 · 12 et 13 décembre 2011 21 la suite

Enseigner l’algorithmique en lycéeInstitut Saint-Cassien

Des activités pour la classe de seconde

12 et 13 Décembre 2011

43

Des activités pour la classe de Seconde

Extrema d’une fonction avec la calculatrice

Sujets d’exposé lié aux calculs de probabilités (AlgoBox)

Simulation de l'intervalle de fluctuation au seuil de 95% (AlgoBox)

Parallélogramme et vecteurs (AlgoBox)

Milieu d'un segment, parallélogramme, distance entre deux points,nature d'un triangle (XCas et AlgoBox)

Activités Seconde

Page 44: Les algorithmes dans l’histoire Des définitions d’un algorithme …algolycee.free.fr/.../Algorithmique_Formiris_2011.pdf · 2012-09-08 · 12 et 13 décembre 2011 21 la suite

Enseigner l’algorithmique en lycée 12 et 13 Décembre 2011Institut Saint-Cassien

Des prolongements pour les classes de Première et de Terminale 44

Des prolongements pour les classes de Premièreet de Terminale

• Algorithme pour déterminer les solutions d'une équation dusecond degré (AlgoBox, Calculatrice, Xcas)

• Divers algorithmes concernant des problèmes d'arithmétique :Programmes Visual Basic : diviseurs d'un entier, nombre premiers(crible Eratosthène), nombres parfaits, répartition des nombrespremiers, nombres de Carmichael

Activités Première-Terminale

Page 45: Les algorithmes dans l’histoire Des définitions d’un algorithme …algolycee.free.fr/.../Algorithmique_Formiris_2011.pdf · 2012-09-08 · 12 et 13 décembre 2011 21 la suite

Enseigner l’algorithmique en lycéeInstitut Saint-Cassien

Quelques conseils pédagogiques liés à mon « expérience »

12 et 13 Décembre 2011

45

Différents modes de présentation des activités algorithmiques

• Guidé : Algorithme à compléter.

• A interpréter : Que fait un algorithme donné ?

• Plus libre : Algorithme à concevoir par les élèves à partir d’unedescription.

• « A la main » : Faire « tourner » manuellement un algorithme donné.

• Evolutif : Faire évoluer un algorithme donné pour le généraliser oul’améliorer.

Modes de présentation des activités

Page 46: Les algorithmes dans l’histoire Des définitions d’un algorithme …algolycee.free.fr/.../Algorithmique_Formiris_2011.pdf · 2012-09-08 · 12 et 13 décembre 2011 21 la suite

Enseigner l’algorithmique en lycéeInstitut Saint-Cassien

Quelques conseils pédagogiques liés à mon « expérience »

12 et 13 Décembre 2011

46

Le type de travail demandé aux élèves

• Ponctuel : Un exercice court sur un seul algorithme.Un « défi » sous forme ludique.

• Dossier à constituer : Série d’algorithmes et de programmes àrestituer sur une période donnée concernant unthème particulier (géométrie plane en secondepar ex.)Exemple : Sur 7 semaines pendantl’accompagnement personnalisé entre deuxpériodes de vacances scolaires.

• Exposé : Sur un thème donné (Ex : jeux de hasard)Avec présentation multimédiaPartie algorithmique + historique +mathématiques.

Travail demandé aux élèves

Page 47: Les algorithmes dans l’histoire Des définitions d’un algorithme …algolycee.free.fr/.../Algorithmique_Formiris_2011.pdf · 2012-09-08 · 12 et 13 décembre 2011 21 la suite

Enseigner l’algorithmique en lycéeInstitut Saint-Cassien

Quelques conseils pédagogiques liés à mon « expérience »

12 et 13 Décembre 2011

47

Conseils sur les activités à proposer

• Avoir des objectifs peu ambitieux au départ.

• Privilégier les algorithmes qui présentent un intérêt certain.

• Avec l’expérience, présenter des activités qui mélangent plusieurs outilslogicielsPar exemple, GeoGebra + AlgoBox ou AlgoBox + XCas.

• Toujours inclure si possible la partie mathématique pure dans l’activitéproposée et faire percevoir l’utilisation d’un logiciel comme un simple outilde conjecture ou bien de confirmation d’un résultat théorique.

• Les activités de simulation liées à la loi des grands nombres sont à monavis les plus « spectaculaires » .(mise en correspondance d’une loi de probabilité avec une simulation).

Contenu des activités à proposer

Page 48: Les algorithmes dans l’histoire Des définitions d’un algorithme …algolycee.free.fr/.../Algorithmique_Formiris_2011.pdf · 2012-09-08 · 12 et 13 décembre 2011 21 la suite

Enseigner l’algorithmique en lycéeInstitut Saint-Cassien

Une présentation de plusieurs logiciels à caractère pédagogique

12 et 13 Décembre 2011

48

Logiciel XCas 1

48

Page 49: Les algorithmes dans l’histoire Des définitions d’un algorithme …algolycee.free.fr/.../Algorithmique_Formiris_2011.pdf · 2012-09-08 · 12 et 13 décembre 2011 21 la suite

Enseigner l’algorithmique en lycéeInstitut Saint-Cassien

Une présentation de plusieurs logiciels à caractère pédagogique

12 et 13 Décembre 2011

49

Logiciel Xcas 2

Exemple : Déterminer si un triangle donné est isocèle enfonction de la donnée des coordonnées de ses 3 sommets.

Présentation : « le couteau suisse des mathématiques »• calcul formel: arithmétique, intégration, dérivation, limites,...• graphes de fonction, paramétrique, dans le plan et l'espace• tableur et statistiques: calcul approché et exact• géométrie interactive: dans le plan et l'espace• programmation• tortue logo• unité physiques : opérations usuelles et conversion

Page 50: Les algorithmes dans l’histoire Des définitions d’un algorithme …algolycee.free.fr/.../Algorithmique_Formiris_2011.pdf · 2012-09-08 · 12 et 13 décembre 2011 21 la suite

Enseigner l’algorithmique en lycéeInstitut Saint-Cassien

Une présentation de plusieurs logiciels à caractère pédagogique

12 et 13 Décembre 2011

50

Logiciel XCas points négatifs/positifs

Points positifs :• Possibilité d’utiliser la « richesse » des fonctions degéométrie et de calcul formel de ce logiciel multi-usage.• La syntaxe est en français.

Points négatifs :• Editeur libre source d’erreurs de syntaxenombreuses, difficiles à gérer avec un groupe d’élève ensimultanée.• Interface du logiciel un peu « fouillie » et qui « date » !

Page 51: Les algorithmes dans l’histoire Des définitions d’un algorithme …algolycee.free.fr/.../Algorithmique_Formiris_2011.pdf · 2012-09-08 · 12 et 13 décembre 2011 21 la suite

Enseigner l’algorithmique en lycéeInstitut Saint-Cassien

Une présentation de plusieurs logiciels à caractère pédagogique

12 et 13 Décembre 2011

51

Logiciel Scratch

Page 52: Les algorithmes dans l’histoire Des définitions d’un algorithme …algolycee.free.fr/.../Algorithmique_Formiris_2011.pdf · 2012-09-08 · 12 et 13 décembre 2011 21 la suite

Enseigner l’algorithmique en lycéeInstitut Saint-Cassien

Une présentation de plusieurs logiciels à caractère pédagogique

12 et 13 Décembre 2011

52

Logiciel Scratch

Exemple : Tracé d’un carré

Présentation :Scratch est un logiciel de programmation destiné à apprendrela programmation aux enfants à partir de 7 ans. On peut créerfacilement animations, jeux, musiques, en y ajoutant del’interactivité.Le principe repose comme les montages Légo avec des briquesque l’on monte et que l’on démonte.

Page 53: Les algorithmes dans l’histoire Des définitions d’un algorithme …algolycee.free.fr/.../Algorithmique_Formiris_2011.pdf · 2012-09-08 · 12 et 13 décembre 2011 21 la suite

Enseigner l’algorithmique en lycéeInstitut Saint-Cassien

Une présentation de plusieurs logiciels à caractère pédagogique

12 et 13 Décembre 2011

53

Logiciel Scratch : points négatifs/positifs

Points positifs :• Approche ludique de la programmation• Pas de problème de syntaxe à mémoriser• Animation graphique et intégration de sons possibles• Manipulation par blocs proche de la démarche algorithmique• La syntaxe est en français.

Points négatifs :• Manipulation des blocs pas toujours aisée• L’ approche ludique peut « masquer le sérieux » d’unalgorithme.

Page 54: Les algorithmes dans l’histoire Des définitions d’un algorithme …algolycee.free.fr/.../Algorithmique_Formiris_2011.pdf · 2012-09-08 · 12 et 13 décembre 2011 21 la suite

Enseigner l’algorithmique en lycéeInstitut Saint-Cassien

Une présentation de plusieurs logiciels à caractère pédagogique

12 et 13 Décembre 2011

54

Environnement Excel / Visual Basic

Page 55: Les algorithmes dans l’histoire Des définitions d’un algorithme …algolycee.free.fr/.../Algorithmique_Formiris_2011.pdf · 2012-09-08 · 12 et 13 décembre 2011 21 la suite

Enseigner l’algorithmique en lycéeInstitut Saint-Cassien

Une présentation de plusieurs logiciels à caractère pédagogique

12 et 13 Décembre 2011

55

Environnement Excel / Visual Basic

Exemple : Simulation de n lancers de 2 dés.Etude des fréquences observées de la somme desdeux dés.

Présentation :Le tableur Excel de Microsoft Office possède unenvironnement de développement avec un langage deprogrammation appelé Visual Basic ( for Applications (VBA)).Les macros-commandes sont enregistrées automatiquementdans ce langage

Page 56: Les algorithmes dans l’histoire Des définitions d’un algorithme …algolycee.free.fr/.../Algorithmique_Formiris_2011.pdf · 2012-09-08 · 12 et 13 décembre 2011 21 la suite

Enseigner l’algorithmique en lycéeInstitut Saint-Cassien

Une présentation de plusieurs logiciels à caractère pédagogique

12 et 13 Décembre 2011

56

Environnement Excel / Visual Basic : points négatifs/positifs

Points positifs :

• Possibilités très riches de mêler les fonctionnalités de calculet graphiques du tableur avec de la programmation.• Possibilité d’obtenir à partir d’une macro une « portion » d’uncode du programme.

Points négatifs :• Syntaxe en Anglais• Phase d’apprentissage du langage plus longue qu’avecd’autres approches.

Page 57: Les algorithmes dans l’histoire Des définitions d’un algorithme …algolycee.free.fr/.../Algorithmique_Formiris_2011.pdf · 2012-09-08 · 12 et 13 décembre 2011 21 la suite

Enseigner l’algorithmique en lycéeInstitut Saint-Cassien

Une présentation de plusieurs logiciels à caractère pédagogique

12 et 13 Décembre 2011

57

Logiciel Java’s Cool

Page 58: Les algorithmes dans l’histoire Des définitions d’un algorithme …algolycee.free.fr/.../Algorithmique_Formiris_2011.pdf · 2012-09-08 · 12 et 13 décembre 2011 21 la suite

Enseigner l’algorithmique en lycéeInstitut Saint-Cassien

Une présentation de plusieurs logiciels à caractère pédagogique

12 et 13 Décembre 2011

58

Logiciel Java’s Cool

Exemple : Ecriture d’une fonction calculant la division dedeux entiers.

Présentation :Java's Cool est un environnement de programmation destiné àl'apprentissage du java.Le logiciel dispose d'un macro langage masquant la complexitéde java.

Page 59: Les algorithmes dans l’histoire Des définitions d’un algorithme …algolycee.free.fr/.../Algorithmique_Formiris_2011.pdf · 2012-09-08 · 12 et 13 décembre 2011 21 la suite

Enseigner l’algorithmique en lycéeInstitut Saint-Cassien

Une présentation de plusieurs logiciels à caractère pédagogique

12 et 13 Décembre 2011

59

Logiciel Java’s Cool : points négatifs/positifs

Points positifs :• « Apprentissage » d’un langage très utilisé dans le domaine dudéveloppement informatique.• Puissance du langage• Modules d’apprentissage préparés (« Proglets »)

Points négatifs :• La complexité du langage JAVA est toujours sous-jacente.

(Fort typage des données, notion d’objet difficilementcontournable)• Syntaxe en anglais.• Ecriture des programmes dans un éditeur libre denombreuses sources d’erreur possibles• Nécessité de compiler le source du programme

(messages du compilateur souvent difficiles àcomprendre).

Page 60: Les algorithmes dans l’histoire Des définitions d’un algorithme …algolycee.free.fr/.../Algorithmique_Formiris_2011.pdf · 2012-09-08 · 12 et 13 décembre 2011 21 la suite

Enseigner l’algorithmique en lycéeInstitut Saint-Cassien

Une présentation de plusieurs logiciels à caractère pédagogique

12 et 13 Décembre 2011

60

Pour la classe de seconde, les logiciels que je préconise sont :• AlgoBox notamment pour l’initiation• Xcas pour des applications sur la géométrie plane• Eventuellement Excel/VBA pour des applications sur lesprobabilités

Concernant les logiciels à utiliser

Concernant les « briques de base » à enseigner

Il me semble réaliste au niveau de la classe de seconde de selimiter aux 3 premières briques (Affectation devariables, Structure conditionnelle et boucles)

Les autres « briques » (Fonctions – procédures etparamètres) pourront être abordées en classe dePremière et Terminale.

Logiciels préconisés

Page 61: Les algorithmes dans l’histoire Des définitions d’un algorithme …algolycee.free.fr/.../Algorithmique_Formiris_2011.pdf · 2012-09-08 · 12 et 13 décembre 2011 21 la suite

Enseigner l’algorithmique en lycée 12 et 13 Décembre 2011Institut Saint-Cassien

Des prolongements pour les classes de Première et de Terminale 61

• Une fonction est un « petit » programme qui engénéral renvoie une valeur.

• Elles permettent un découpage de l’algorithme quirend sa compréhension et son développement plusfacile.

• Une fonction a une liste de paramètres en entrée etune valeur en retour.

• Une fonction qui ne retourne rien est appelée uneprocédure.

Notion de fonctionNotion de fonction

Page 62: Les algorithmes dans l’histoire Des définitions d’un algorithme …algolycee.free.fr/.../Algorithmique_Formiris_2011.pdf · 2012-09-08 · 12 et 13 décembre 2011 21 la suite

Enseigner l’algorithmique en lycée 12 et 13 Décembre 2011Institut Saint-Cassien

Des prolongements pour les classes de Première et de Terminale 62

• Exemple : fonction qui calcule la somme de deuxnombres.

Notion de fonction

• Résultat somme(a;b)retourner (a + b)

• Exemple d’appel de cette fonction :resultat = somme(12;16)

Notion de fonction : somme de deux entiers

Page 63: Les algorithmes dans l’histoire Des définitions d’un algorithme …algolycee.free.fr/.../Algorithmique_Formiris_2011.pdf · 2012-09-08 · 12 et 13 décembre 2011 21 la suite

Enseigner l’algorithmique en lycée 12 et 13 Décembre 2011Institut Saint-Cassien

Des prolongements pour les classes de Première et de Terminale 63

• Exercice : écrire en pseudo-code une fonction qui retourne lePGCD de deux entiers naturels et l’implémenter avec VisualBasic.

Notion de fonctionNotion de fonction : PGCD de deux entiers

Page 64: Les algorithmes dans l’histoire Des définitions d’un algorithme …algolycee.free.fr/.../Algorithmique_Formiris_2011.pdf · 2012-09-08 · 12 et 13 décembre 2011 21 la suite

Enseigner l’algorithmique en lycée 12 et 13 Décembre 2011Institut Saint-Cassien

Des prolongements pour les classes de Première et de Terminale 64

Notion de fonctionResultat PGCD( entier a, entier b)debut

Si b < a alorstemp bb aa b

Finsir mod(a;b)tant que r <> 0

a bsi r <> 0 alors

b rFinSir mod(a;b)

Fin TantQueretourner b

fin

Notion de fonction : PGCD de deux entiers (pseudo-code)

Page 65: Les algorithmes dans l’histoire Des définitions d’un algorithme …algolycee.free.fr/.../Algorithmique_Formiris_2011.pdf · 2012-09-08 · 12 et 13 décembre 2011 21 la suite

Enseigner l’algorithmique en lycée 12 et 13 Décembre 2011Institut Saint-Cassien

Des prolongements pour les classes de Première et de Terminale 65

Notion de fonctionPublic Function pgcd(a, b) As IntegerIf a < b Then

temp = bb = aa = b

End Ifr = a Mod bWhile r <> 0

a = bIf r <> 0 Then

b = rr = a Mod b

End IfWendpgcd = b

End Function

Sub test_pgcd()a = InputBox("Valeur de a")b = InputBox("Valeur de b")a = CInt(a)b = CInt(b)c = pgcd(a, b)Cells(1, 1) = c

End Sub

Notion de fonction : PGCD (pgm VBA)

Page 66: Les algorithmes dans l’histoire Des définitions d’un algorithme …algolycee.free.fr/.../Algorithmique_Formiris_2011.pdf · 2012-09-08 · 12 et 13 décembre 2011 21 la suite

Enseigner l’algorithmique en lycée 12 et 13 Décembre 2011Institut Saint-Cassien

Des prolongements pour les classes de Première et de Terminale 66

Notion de récursivité• Une fonction qui fait appel à elle-même dans son corps est

dites « récursive »• De nombreux problèmes ont des solutions récursives «

naturelles »• Les langages de programmation moderne permettent l’utilisation

de la récursivité.

Récursivité

Page 67: Les algorithmes dans l’histoire Des définitions d’un algorithme …algolycee.free.fr/.../Algorithmique_Formiris_2011.pdf · 2012-09-08 · 12 et 13 décembre 2011 21 la suite

Enseigner l’algorithmique en lycée 12 et 13 Décembre 2011Institut Saint-Cassien

Des prolongements pour les classes de Première et de Terminale 67

Notion de récursivitéExemples :• Calcul de la factorielle d’un entier : 0! = 1 et pour n≥1 n! = n.(n-1)!• Calcul des nombres de Fibonacci : F0 = 0, F1 = 1 et

pour n ≥2 Fn = Fn-1 + Fn-2• Calcul du coefficient binomial C(k,n) : C(0,n) = C(n,n) =1 et pour

1≤k<n, C(k,n) = C(k-1,n-1) + C(k-1,n)• Résolution du problème des tours de Hanoi

Récursivité : exemples

Page 68: Les algorithmes dans l’histoire Des définitions d’un algorithme …algolycee.free.fr/.../Algorithmique_Formiris_2011.pdf · 2012-09-08 · 12 et 13 décembre 2011 21 la suite

Enseigner l’algorithmique en lycée 12 et 13 Décembre 2011Institut Saint-Cassien

Des prolongements pour les classes de Première et de Terminale 68

Notion de récursivitéExemple : calcul de la factorielle d’un entier

1. Algorithme itératifentier factorielle_iteratif(entier n)Début

res 1Pour i = 1 à n

res = res * ii Suivantretourner res

Fin

Récursivité : factorielle (algo itératif)

Page 69: Les algorithmes dans l’histoire Des définitions d’un algorithme …algolycee.free.fr/.../Algorithmique_Formiris_2011.pdf · 2012-09-08 · 12 et 13 décembre 2011 21 la suite

Enseigner l’algorithmique en lycée 12 et 13 Décembre 2011Institut Saint-Cassien

Des prolongements pour les classes de Première et de Terminale 69

Notion de récursivitéExemple : calcul de la factorielle d’un entier

2. Algorithme récursifentier factorielle (entier n)Début

Si n = 0 alors retourner 1Si n = 1 alors retourner 1retourner n * factorielle(n – 1)

Fin

Récursivité : factorielle (algo récursif)

Page 70: Les algorithmes dans l’histoire Des définitions d’un algorithme …algolycee.free.fr/.../Algorithmique_Formiris_2011.pdf · 2012-09-08 · 12 et 13 décembre 2011 21 la suite

Enseigner l’algorithmique en lycée 12 et 13 Décembre 2011Institut Saint-Cassien

Des prolongements pour les classes de Première et de Terminale 70

Notion de récursivitéExemple : tours de Hanoï

Le problème des tours de Hanoï est un jeu de réflexion imaginé par lemathématicien français Édouard Lucas, et consistant à déplacer desdisques de diamètres différents d'une tour de « départ » à une tourd'« arrivée » en passant par une tour « intermédiaire » et ceci en unminimum de coups, tout en respectant les règles suivantes :• on ne peut déplacer plus d'un disque à la fois,• on ne peut placer un disque que sur un autre disque plus grand que lui ou

sur un emplacement vide.• On suppose que cette dernière règle est également respectée dans la

configuration de départ.

Récursivité : tours de Hanoï

Page 71: Les algorithmes dans l’histoire Des définitions d’un algorithme …algolycee.free.fr/.../Algorithmique_Formiris_2011.pdf · 2012-09-08 · 12 et 13 décembre 2011 21 la suite

Enseigner l’algorithmique en lycée 12 et 13 Décembre 2011Institut Saint-Cassien

Des prolongements pour les classes de Première et de Terminale 71

Notion de récursivitéExemple : tours de Hanoï

Étapes de la résolution du problème avec 4disques.

Récursivité : tours de Hanoï : animation

Page 72: Les algorithmes dans l’histoire Des définitions d’un algorithme …algolycee.free.fr/.../Algorithmique_Formiris_2011.pdf · 2012-09-08 · 12 et 13 décembre 2011 21 la suite

Enseigner l’algorithmique en lycée 12 et 13 Décembre 2011Institut Saint-Cassien

Des prolongements pour les classes de Première et de Terminale 72

Notion de récursivitéExemple : tours de Hanoï

Principe de la résolution :Pour déplacer une tour de N disques de a vers b, on déplace la tourdes N-1 premiers disques de a vers c, puis le disque N de a vers b,puis la tour des N-1 disques de c vers b.

Récursivité : tours de Hanoï : principe de résolution

Page 73: Les algorithmes dans l’histoire Des définitions d’un algorithme …algolycee.free.fr/.../Algorithmique_Formiris_2011.pdf · 2012-09-08 · 12 et 13 décembre 2011 21 la suite

Enseigner l’algorithmique en lycée 12 et 13 Décembre 2011Institut Saint-Cassien

Des prolongements pour les classes de Première et de Terminale 73

Notion de récursivitéExemple : tours de Hanoï

Ce qui conduit naturellement à l’algorithme récursif suivant :nombre : nombre de disques utilisésde : emplacement de départà : emplacement de destinationpar : emplacement intermédiaireDéplacer (nombre, de, à, par)

Si nombre > 0 alorsDéplacer (nombre - 1, de, par, à)Bouger-un-disque (de, à)Déplacer (nombre - 1, par, à, de)

Fin-si

Récursivité : tours de Hanoï : algorithme

Page 74: Les algorithmes dans l’histoire Des définitions d’un algorithme …algolycee.free.fr/.../Algorithmique_Formiris_2011.pdf · 2012-09-08 · 12 et 13 décembre 2011 21 la suite

Enseigner l’algorithmique en lycée 12 et 13 Décembre 2011Institut Saint-Cassien

Des prolongements pour les classes de Première et de Terminale 74

Notion de récursivitéExemple : tours de Hanoï

On peut montrer facilement par récurrence que pour une tour de ndisques, le nombre de déplacements est de 2n – 1.

Ainsi, un jeu à 64 disques requiert un minimum de 264- 1déplacements. En admettant qu'il faille 1 seconde pour déplacer undisque, ce qui fait 86 400 déplacements par jour, la fin du jeuaurait lieu au bout d'environ 213 000 milliards de jours, ce quiéquivaut à peu près à 584,5 milliards d'années, soit 43 fois l'âgeestimé de l'univers (13,7 milliards d'années) !

On dit que cet algorithme a une complexité exponentielle.

Récursivité : tours de Hanoï : complexité exponentielle

Page 75: Les algorithmes dans l’histoire Des définitions d’un algorithme …algolycee.free.fr/.../Algorithmique_Formiris_2011.pdf · 2012-09-08 · 12 et 13 décembre 2011 21 la suite

Enseigner l’algorithmique en lycée 12 et 13 Décembre 2011Institut Saint-Cassien

Des prolongements pour les classes de Première et de Terminale 75

Notion de récursivitéExercice : Ecrire une version récursive du calcul du PGCD de deuxentiers naturels.

Récursivité : tours de Hanoï : complexité exponentielle

Resultat PGCD(a;b)Si b = 0 alors

retourner aSinon

r mod(a;b)PGCD(b;r)

FinSi

Page 76: Les algorithmes dans l’histoire Des définitions d’un algorithme …algolycee.free.fr/.../Algorithmique_Formiris_2011.pdf · 2012-09-08 · 12 et 13 décembre 2011 21 la suite

Enseigner l’algorithmique en lycée 12 et 13 Décembre 2011Institut Saint-Cassien

Des prolongements pour les classes de Première et de Terminale 76

Pourquoi mathématiques et algorithmique sont-ils siintimement liés ?

Notion mathématique Notion similaire enalgorithmique/programmation

Organisation d’une démonstrationen géométrie (surtout) enchaînons déductifs successifs

Programmation en modules

Raisonnement par disjonction descas

Structures conditionnelles (Si …alors …. ) ou bien « Switch case »

Fonction Notion reprise quasiment àl’identique

Raisonnement par récurrence Récursivité

Page 77: Les algorithmes dans l’histoire Des définitions d’un algorithme …algolycee.free.fr/.../Algorithmique_Formiris_2011.pdf · 2012-09-08 · 12 et 13 décembre 2011 21 la suite

Enseigner l’algorithmique en lycée 12 et 13 Décembre 2011Institut Saint-Cassien

Ce que disent les programmes officiels 77

BO : outils logiciels

Page 78: Les algorithmes dans l’histoire Des définitions d’un algorithme …algolycee.free.fr/.../Algorithmique_Formiris_2011.pdf · 2012-09-08 · 12 et 13 décembre 2011 21 la suite

Enseigner l’algorithmique en lycée 12 et 13 Décembre 2011Institut Saint-Cassien

Ce que disent les programmes officiels 78

BO : objectifs pour le lycée

Page 79: Les algorithmes dans l’histoire Des définitions d’un algorithme …algolycee.free.fr/.../Algorithmique_Formiris_2011.pdf · 2012-09-08 · 12 et 13 décembre 2011 21 la suite

Enseigner l’algorithmique en lycée 12 et 13 Décembre 2011Institut Saint-Cassien

Ce que disent les programmes officiels 79

Classe de SecondeBO : seconde : activités

Page 80: Les algorithmes dans l’histoire Des définitions d’un algorithme …algolycee.free.fr/.../Algorithmique_Formiris_2011.pdf · 2012-09-08 · 12 et 13 décembre 2011 21 la suite

Enseigner l’algorithmique en lycée 12 et 13 Décembre 2011Institut Saint-Cassien

Ce que disent les programmes officiels 80

Classe de Seconde : points du programme liés à l’algorithmique

Fonctions : Même si les logiciels traceurs de courbes permettentd’obtenir rapidement la représentation graphique d’unefonction définie par une formule algébrique, il estintéressant, notamment pour les fonctions définies parmorceaux, de faire écrire aux élèves un algorithmede tracé de courbe.

Expressions : Les élèves apprennent à développer des stratégiesalgébriques s’appuyant sur l’observation de courbes, l’anticipation

et l’intelligence du calcul. Le cas échéant, celas’accompagne d’une mobilisation éclairée et pertinentedes logiciels de calcul formel.

BO : seconde : Fonctions et expressions algébriques

Page 81: Les algorithmes dans l’histoire Des définitions d’un algorithme …algolycee.free.fr/.../Algorithmique_Formiris_2011.pdf · 2012-09-08 · 12 et 13 décembre 2011 21 la suite

Enseigner l’algorithmique en lycée 12 et 13 Décembre 2011Institut Saint-Cassien

Ce que disent les programmes officiels 81

Classe de Seconde : points du programme liés à l’algorithmique

Equations : Encadrer une racine d’une équation grâce à unalgorithme de dichotomie.Pour un même problème, combiner résolutiongraphique et contrôle algébrique. Utiliser, en particulier,les représentations graphiques données sur écran parune calculatrice, un logiciel.

Configurations : Le cadre de la géométrie repérée offre la possibilité dedu plan traduire numériquement des propriétés géométriques

et permet de résoudre certains problèmes par la miseen œuvre d’algorithmes simples.

Géométrie : On entraîne les élèves à l’utilisation autonome d’unlogiciel de géométrie dans l’espace.

BO:seconde: Equations, géométrie

Page 82: Les algorithmes dans l’histoire Des définitions d’un algorithme …algolycee.free.fr/.../Algorithmique_Formiris_2011.pdf · 2012-09-08 · 12 et 13 décembre 2011 21 la suite

Enseigner l’algorithmique en lycée 12 et 13 Décembre 2011Institut Saint-Cassien

Ce que disent les programmes officiels 82

Classe de Première S : points du programme liés à l’algorithmique

Second degré : Proposer des activités algorithmiques.

Dérivation : Si nécessaire dans le cadre de la résolution deproblèmes, le calcul de la dérivée d’une fonction estfacilité par l’utilisation d’un logiciel de calcul formel.

: L’utilisation des outils logiciels facilite l’introduction dunombre dérivé.

Suites : Mettre en œuvre des algorithmes permettant d’obtenirune liste de termes d’une suite et de calculer un terme derang donné.L’utilisation du tableur et la mise en œuvre d’algorithmessont l’occasion d’étudier des suites définies par unerelation de récurrence.

BO:Premiere_S:Second_deg, Dérivation, Suites

Page 83: Les algorithmes dans l’histoire Des définitions d’un algorithme …algolycee.free.fr/.../Algorithmique_Formiris_2011.pdf · 2012-09-08 · 12 et 13 décembre 2011 21 la suite

Enseigner l’algorithmique en lycée 12 et 13 Décembre 2011Institut Saint-Cassien

Ce que disent les programmes officiels 83

Classe de Première S : points du programme liés à l’algorithmique

Suites : Sens de variationOn peut utiliser un algorithme ou un tableur pour traiterdes problèmes de comparaison d’évolution et de seuil.

Approche de la notion de limiteLe tableur et les logiciels de géométrie dynamique et decalcul sont des outils adaptés à l’étude des suites, enparticulier pour l’approche expérimentale de la notion delimite.

Statistiques : On utilise la calculatrice ou un logiciel pour déterminerla variance et l’écart-type d’une série statistique.Des travaux réalisés à l’aide d’un logiciel permettant defaire observer des exemples d’effets de structure lors decalcul de moyennes.

BO:Première_S:suites, Statistiques

Page 84: Les algorithmes dans l’histoire Des définitions d’un algorithme …algolycee.free.fr/.../Algorithmique_Formiris_2011.pdf · 2012-09-08 · 12 et 13 décembre 2011 21 la suite

Enseigner l’algorithmique en lycée 12 et 13 Décembre 2011Institut Saint-Cassien

Ce que disent les programmes officiels 84

Classe de Première S : points du programme liés à l’algorithmique

Probabilités : On exploite les fonctionnalités de la calculatrice ou d’unlogiciel pour déterminer l’espérance, la variance d’unesérie de données.

On peut simuler la loi géométrique tronquée avec unalgorithme.

On peut simuler la loi binomiale avec un algorithme.

Echantillonnage: L’intervalle de fluctuation peut être déterminé à l’aide d’untableur ou d’un algorithme.

BO:PremièreS:Proba,Echantillon

Page 85: Les algorithmes dans l’histoire Des définitions d’un algorithme …algolycee.free.fr/.../Algorithmique_Formiris_2011.pdf · 2012-09-08 · 12 et 13 décembre 2011 21 la suite

Enseigner l’algorithmique en lycée 12 et 13 Décembre 2011Institut Saint-Cassien

Ce que disent les programmes officiels 85

Classe de Premières ES et L : points du programme liés à l’algorithmique

Second degré : Proposer des activités algorithmiques.

Etude de fonctions : L’utilisation des outils logiciels facilite l’introductiondu nombre dérivé.Si nécessaire dans le cadre de la résolution deproblèmes, le calcul de la dérivée d’une fonctionest facilité par l’utilisation d’un logiciel de calculformel.

Suites : Mettre en œuvre des algorithmes permettantd’obtenir une liste de termes d’une suite et decalculer un terme de rang donné.L’utilisation du tableur et la mise en œuvred’algorithmes sont l’occasion d’étudier des suitesdéfinies par une relation de récurrence.

BO:Premières_ES_L:second_deg,fonctions,suites

Page 86: Les algorithmes dans l’histoire Des définitions d’un algorithme …algolycee.free.fr/.../Algorithmique_Formiris_2011.pdf · 2012-09-08 · 12 et 13 décembre 2011 21 la suite

Enseigner l’algorithmique en lycée 12 et 13 Décembre 2011Institut Saint-Cassien

Ce que disent les programmes officiels 86

Classe de Premières ES et L : points du programme liés à l’algorithmique

Suites : Sens de variationOn peut utiliser un algorithme ou un tableur pour traiterdes problèmes de comparaison d’évolution, de seuil et detaux moyen.

Statistiques : On utilise la calculatrice ou un logiciel pour déterminerla variance et l’écart-type d’une série statistique.Des travaux réalisés à l’aide d’un logiciel permettant defaire observer des exemples d’effets de structure lors decalcul de moyennes.

BO:Premières_ES_L:Suites,Stats

Page 87: Les algorithmes dans l’histoire Des définitions d’un algorithme …algolycee.free.fr/.../Algorithmique_Formiris_2011.pdf · 2012-09-08 · 12 et 13 décembre 2011 21 la suite

Enseigner l’algorithmique en lycée 12 et 13 Décembre 2011Institut Saint-Cassien

Ce que disent les programmes officiels 87

Classe de Première S : points du programme liés à l’algorithmique

Probabilités : À l’aide de simulations et d’une approche heuristique dela loi des grands nombres, on fait le lien avec lamoyenne d’une série de données.On exploite les fonctionnalités de la calculatrice ou d’unlogiciel pour déterminer l’espérance d’une variablealéatoire.

Coefficients binomiauxEn pratique, on utilise une calculatrice ou un logiciel pourobtenir les valeurs des coefficients binomiaux, calculerdirectement des probabilités et représentergraphiquement la loi binomiale.On peut simuler la loi binomiale avec un algorithme.

Echantillonnage : L’intervalle de fluctuation peut être déterminé à l’aided’un tableur ou d’un algorithme.

BO:Premières_ES_L:Proba,Ecchantillonnage

Page 88: Les algorithmes dans l’histoire Des définitions d’un algorithme …algolycee.free.fr/.../Algorithmique_Formiris_2011.pdf · 2012-09-08 · 12 et 13 décembre 2011 21 la suite

Enseigner l’algorithmique en lycée 12 et 13 Décembre 2011Institut Saint-Cassien

Ce que disent les programmes officiels 88

Classe de Terminale S (projet) : points du programme liés à l’algorithmique

Suites : Dans le cas d’une limite infinie, étant donnés une suitecroissante (un) et un nombre réel A, déterminer à l’aided’un algorithme un rang à partir duquel un est supérieur àA.

Continuité sur : Des activités algorithmiques sont réalisées dans le cadreun intervalle, de la recherche de solutions de l’équation f (x) = k .théorème desvaleursintermédiaires

BO:TS:Suites,Continuité

Page 89: Les algorithmes dans l’histoire Des définitions d’un algorithme …algolycee.free.fr/.../Algorithmique_Formiris_2011.pdf · 2012-09-08 · 12 et 13 décembre 2011 21 la suite

Enseigner l’algorithmique en lycée 12 et 13 Décembre 2011Institut Saint-Cassien

Ce que disent les programmes officiels 89

Classe de Terminale S (projet) : points du programme liés à l’algorithmique

Intégration : Pour une fonction monotone positive, mettre en œuvreun algorithme pour déterminer un encadrement d’uneintégrale.

Géométrie : On étudie quelques exemples de sections planes du dansl’espace cube. Ce travail est facilité par l’utilisation d’un logiciel de

géométrie dynamique.

Probabilités : Conditionnement, indépendanceDes activités algorithmiques sont menées dans ce cadre,notamment pour simuler une marche aléatoire.

Loi uniforme sur [a, b].L’instruction « nombre aléatoire » d’un logiciel ou d’unecalculatrice permet d’introduire la loi uniforme sur [0,1].

BO:TS:Intégration,Espace,Proba

Page 90: Les algorithmes dans l’histoire Des définitions d’un algorithme …algolycee.free.fr/.../Algorithmique_Formiris_2011.pdf · 2012-09-08 · 12 et 13 décembre 2011 21 la suite

Enseigner l’algorithmique en lycée 12 et 13 Décembre 2011Institut Saint-Cassien

Ce que disent les programmes officiels 90

Classe de Terminale S (projet) : points du programme liés à l’algorithmique

Probabilités : Loi uniforme sur [a, b].L’instruction « nombre aléatoire » d’un logiciel ou d’unecalculatrice permet d’introduire la loi uniforme sur [0,1].Approfondissement : Méthode de Monte-Carlo.

BO:TS:Intégration, Proba

Page 91: Les algorithmes dans l’histoire Des définitions d’un algorithme …algolycee.free.fr/.../Algorithmique_Formiris_2011.pdf · 2012-09-08 · 12 et 13 décembre 2011 21 la suite

Enseigner l’algorithmique en lycée 12 et 13 Décembre 2011Institut Saint-Cassien

Ce que disent les programmes officiels 91

Classe de Terminales ES-L (projet) : points du programme liés à l’algorithmique

Suites : Limite de la suite (qn), q étant un nombre réelstrictement positif.Étant donné une suite (qn) avec 0 < q < 1, mettre enœuvre un algorithme permettant de déterminer un seuil àpartir duquel qn est inférieur à un réel a positif donné.

Loi normale : Utiliser une calculatrice ou un tableur pour obtenir une NN (μ, σ) probabilité dans le cadre d’une loi normale N (μ, σ).

BO:TS: Suites, Loi normale

Page 92: Les algorithmes dans l’histoire Des définitions d’un algorithme …algolycee.free.fr/.../Algorithmique_Formiris_2011.pdf · 2012-09-08 · 12 et 13 décembre 2011 21 la suite

Enseigner l’algorithmique en lycéeInstitut Saint-Cassien

Objectifs pour des lycéens

12 et 13 Décembre 2011

92

Objectifs visés pour des lycéens• Les objectifs « formateurs » de l’algorithmique :

familiariser les élèves avec les grands principes d’organisation d’un algorithme :– gestion des entrées-sorties,– affectation d’une valeur et mise en forme d’un calcul, en opérant

essentiellement sur des nombres entiers.

• Les objectifs « opérationnels » de l’algorithmique :- décrire certains algorithmes en langage naturel ou dans un langage

symbolique ;- en implémenter quelques uns à l’aide d’un tableur ou d’un petit programmeréalisé sur une calculatrice ou avec un logiciel adapté ;- interpréter des algorithmes plus complexes.

Objectifs pour les lycéens