Transcript of 1Isabelle ABOU ALGORITHMIQUE STAGE LA REUNION. 2Isabelle ABOU PLAN DE LEXPOSE I. LALGORITHMIQUE II....
- Page 1
- 1Isabelle ABOU ALGORITHMIQUE STAGE LA REUNION
- Page 2
- 2Isabelle ABOU PLAN DE LEXPOSE I. LALGORITHMIQUE II.
LALGORITHMIQUE AU LYCEE III. LE LOGICIEL ALGOBOX IV. ACTIVITES
ALGORITHMIQUES
- Page 3
- 3Isabelle ABOU PARTIE 4: ACTIVITES ALGORITHMIQUES
- Page 4
- 4Isabelle ABOU INTRODUCTION Dans cette partie sont prsents des
exemples dactivits possibles en seconde qui intgrent des
algorithmes dans leur rsolution. Les exemples traits ici sont issus
des sources suivantes: - certains ont t imagins par lauteur de ce
stage en suivant les instructions du nouveau programme officiel de
Seconde, - dautres sont tirs de deux documents dits en juin et
juillet 2009 par la Direction Gnrale de lEnseignement scolaire
Ressources pour la classe de Seconde -Algorithmique-, et
-Probabilits et statistiques-. - d'autres encore ont t tirs de
sites Internet ou de manuels puis retravaills et remanis. Les
programmes ont t crits avec AlgoBox, ceux tirs des documents
ressources sont crits dans dautres langages. Ces exemples pourront
videmment tre, discuts, critiqus, et ventuellement amliors.
- Page 5
- Isabelle ABOU5 PRESENTATION Pour introduire la notion
dalgorithmique, on pourra sappuyer sur des situations relevant de
la vie courante (recette de cuisine) et/ou de petits algorithmes
opratoires sous forme de jeu (jeu du tour de magie). On traitera
des algorithmes en relation avec les trois grandes parties de
programme: - Fonctions - Gomtrie - Probabilits et statistiques. A
intgrer ensuite dans les chapitres appropris. Le but ntant pas de
donner une liste exhaustive dalgorithmes possibles, ce qui est de
toute faon impossible, mais den donner un certain nombre, en
relation avec des activits et rsolution de problmes, et qui
paraissent appropris ltat desprit du nouveau programme.
- Page 6
- Isabelle ABOU6 EXEMPLE AVEC UNE RECETTE DE CUISINE Ingrdients
de la pte crpes: 200g de farine 1 pince de sel sachet de levure 3
cuilleres soupe d'huile 15cl d'eau 15 cl de lait 4 oeufs 4
cuilleres soupe de rhum 2 cuilleres soupe de sucre + vanille
Prparation de la pte dans le dsordre: ajouter le sucre + vanille si
la pte est trop paisse, ajouter un peu de lait mlanger les
ingrdients battre les ufs laisser reposer la pte casser les oeufs
dlayer le tout avec l'eau + lait + rhum + huile ajouter la farine +
levure + sel Exercice: Remettre dans l'ordre les instructions de la
recette de la pte crpes. Identifier les tapes de la recette avec
les tapes dun algorithme. ENTREE: Dclaration: Liste des ingrdients
Initialisation: Dosage de chaque ingrdient TRAITEMENT: I1: casser
les oeufs I2: battre les oeufs I3: ajouter le sucre + vanille I4:
ajouter la farine + levure + sel I5: mlanger les ingrdients I6:
dlayer le tout avec l'eau + lait + rhum + huile I7: si la pte est
trop paisse, ajouter un peu de lait SORTIE: I8: laisser reposer la
pte
- Page 7
- Isabelle ABOU7 ANALYSE PEDAGOGIQUE Ce premier exemple avec la
recette de cuisine peut tre intressant car - il est trs simple pour
commencer, - il permet de faire une petite recherche oprationnelle
et dintroduire limportance de lordre des instructions, - il permet
de mettre en vidence les trois tapes dun algorithme: entre,
traitement, sortie, - il permet dintroduire une instruction
conditionnelle.
- Page 8
- Isabelle ABOU8 JEU DU TOUR DE MAGIE Le professeur demande aux
lves deffectuer mentalement les calculs suivants: - Prendre un
nombre entier, - Lui ajouter 3, - Multiplier le rsultat obtenu par
le nombre de dpart, - Retrancher ce nombre le carr du nombre de
dpart. Le professeur prend un lve au hasard, et lui demande de lui
donner le nombre quil a obtenu aprs calculs. Il annonce ensuite le
nombre que cet lve avait choisi au dpart. Puis, le professeur pose
la question aux lves: comment ai-je fait? On rcrit ensemble les
tapes de la procdure de calcul, on la fait tourner pour plusieurs
nombres, et on met en vidence la forme du rsultat obtenu. Cela peut
tre le premier algorithme calculatoire introduire pour faire
comprendre la dclaration, laffectation et la lecture/criture.
- Page 9
- Isabelle ABOU9 ALGORITHME TOUR DE MAGIE ENTREE n, p Entiers
naturels Afficher donner une valeur n Lire n TRAITEMENT Affecter p
la valeur n+3 Affecter p la valeur p*n Affecter p la valeur p-n
SORTIE Afficher p
- Page 10
- Isabelle ABOU10 GEOMETRIE REPEREE
- Page 11
- Isabelle ABOU11 PISTES DU PROGRAMME Le plan est suppos muni dun
repre orthonormal. Calculer les coordonnes du milieu dun segment;
Calculer la distance entre deux points; Calculer des primtres, des
aires, des volumes Calculer les coordonnes dun vecteur, de la somme
de vecteurs; Rsolution de problmes: Dire si un triangle est
quilatral, isocle, rectangle. Dire si un quadrilatre est un
paralllogramme. Trouver le quatrime point dun quadrilatre pour
obtenir un paralllogramme. Constructions gomtriques.
- Page 12
- Isabelle ABOU12 PREMIERS ALGORITHME ET PROGRAMME Lalgorithme
qui nous parait tre le plus simple, et le premier faire chercher
aux lves est lalgorithme calcul des coordonnes du milieu dun
segment . Cet algorithme permet dintroduire les notions
fondamentales de lecture/ criture, de mettre laccent sur la
diffrence entre Afficher un message et Afficher la valeur dune
variable , qui sont deux instructions diffrencies dans AlgoBox,
ainsi que sur linstruction Lire la valeur dune variable . Dans un
premier temps lalgorithme a t cherch sur papier, puis le programme
crit sans le trac du graphique, et une autre sance, nous avons
rajout le trac du graphique. La prise en main du logiciel avec ses
diffrentes fonctionnalits a dur environ 1 heure, lcriture de
lalgorithme, 1 heure, les rectifications ventuelles et pour
certains lcriture dun autre algorithme, encore 1 heure.
- Page 13
- Isabelle ABOU13 MISE EN SITUATION Nous donnerons dabord
lalgorithme et le programme corrects, puis des programmes
comportant des erreurs commises par les lves de seconde de
lanimatrice de ce stage. Ceux-ci sont intressants car ils
permettent de mettre en vidence les difficults rencontres. On
notera toutefois que certains lves ont eu le temps dcrire le
programme correct sans le trac du graphique, certains avec le trac
du graphique, et dautres dcrire galement lalgorithme calcul de la
distance entre deux points . Ces sances pourrons donner loccasion
de faire de la pdagogie diffrencie, puisque les lves nen ont pas t
au mme stade dapprentissage ni de comprhension.
- Page 14
- Isabelle ABOU14 ALGORITHME: COORDONNEES MILIEU DUN SEGMENT
ENTREE: Dclaration: xA, yA, xB, yB, xI, yI, nombres entiers (ou
rels) Affectation: Afficher "Entrer l'abscisse du point A" Lire xA
Afficher "Entrer l'ordonne du point A" Lire yA Afficher "Entrer
l'abscisse du point B" Lire xB Afficher "Entrer l'ordonne du point
B" Lire xB TRAITEMENT Donner xI la valeur (xA+xB)/2 Donner yI la
valeur (yA+yB)/2 SORTIE Afficher "L'abscisse du milieu I de [AB]
est:", xI Afficher "L'ordonne du milieu I de [AB] est:", yI
- Page 15 (xB,yB) 27 FIN_ALGORITHME">
- Isabelle ABOU15 PROGRAMME ALGOBOX COORDONNEES DU MILIEU 1
VARIABLES 2 xA EST_DU_TYPE NOMBRE 3 yA EST_DU_TYPE NOMBRE 4 xB
EST_DU_TYPE NOMBRE 5 yB EST_DU_TYPE NOMBRE 6 xI EST_DU_TYPE NOMBRE
7 yI EST_DU_TYPE NOMBRE 8 DEBUT_ALGORITHME 9 AFFICHER "Donner une
valeur xA" 10 LIRE xA 11 AFFICHER "Donner une valeur yA" 12 LIRE yA
13 AFFICHER "Donner une valeur xB" 14 LIRE xB 15 AFFICHER "Donner
une valeur yB" 16 LIRE yB 17 xI PREND_LA_VALEUR (xA+xB)/2 18 yI
PREND_LA_VALEUR (yA+yB)/2 19 AFFICHER "L'abscisse du milieu I de
[AB] est xI=" 20 AFFICHER xI 21 AFFICHER "L'ordonne du milieu I de
[AB] est yI=" 22 AFFICHER yI 23 TRACER_POINT (xA,yA) 24
TRACER_POINT (xB,yB) 25 TRACER_POINT (xI,yI) 26 TRACER_SEGMENT
(xA,yA)->(xB,yB) 27 FIN_ALGORITHME
- Page 16
- Isabelle ABOU16 2 PROGRAMMES DELEVES AVEC DES ERREURS 1
VARIABLES 2 xa EST_DU_TYPE NOMBRE 3 ya EST_DU_TYPE NOMBRE 4 xb
EST_DU_TYPE NOMBRE 5 yb EST_DU_TYPE NOMBRE 6 xi EST_DU_TYPE NOMBRE
7 yi EST_DU_TYPE NOMBRE 8 DEBUT_ALGORITHME 9 AFFICHER "donner une
valeur xa" 10 AFFICHER "donner une ya" 11 AFFICHER "donner une
valeur xb" 12 AFFICHER "donner une valeur yb" 13 AFFICHER "donner
une valeur xi" 14 AFFICHER "donner une valeur yi" 15 FIN_ALGORITHME
1 VARIABLES 2 xA EST_DU_TYPE NOMBRE 3 yA EST_DU_TYPE NOMBRE 4 xB
EST_DU_TYPE NOMBRE 5 yB EST_DU_TYPE NOMBRE 6 xI EST_DU_TYPE NOMBRE
7 yI EST_DU_TYPE NOMBRE 8 DEBUT_ALGORITHME 9 LIRE xA 10 LIRE yA 11
LIRE xB 12 LIRE yB 13 LIRE xI 14 LIRE yI 15 FIN_ALGORITHME
- Page 17
- Isabelle ABOU17 2 PROGRAMMES DELEVES AVEC DES ERREURS 1
VARIABLES 2 xA EST_DU_TYPE NOMBRE 3 xB EST_DU_TYPE NOMBRE 4 yA
EST_DU_TYPE NOMBRE 5 yB EST_DU_TYPE NOMBRE 6 xI EST_DU_TYPE NOMBRE
7 yI EST_DU_TYPE NOMBRE 8 DEBUT_ALGORITHME 9 AFFICHER "donner une
valeur xA" 10 LIRE xA 11 AFFICHER "donner une valeur yA" 12 LIRE yA
13 AFFICHER "donner une une valeur xB" 14 LIRE xB 15 AFFICHER
"donner la valeur yB" 16 LIRE yB 17 xI PREND_LA_VALEUR (xA+xB)/2 18
xA PREND_LA_VALEUR (yA+yB)/2 19 FIN_ALGORITHME 1 VARIABLES 2 xA
EST_DU_TYPE NOMBRE 3 yA EST_DU_TYPE NOMBRE 4 xB EST_DU_TYPE NOMBRE
5 yB EST_DU_TYPE NOMBRE 6 xI EST_DU_TYPE NOMBRE 7 yI EST_DU_TYPE
NOMBRE 8 DEBUT_ALGORITHME 9 AFFICHER "donner une valeur xA" 10
AFFICHER "LIRE xA" 11 AFFICHER "donner une valeur yA" 12 AFFICHER
"LIRE yA" 13 AFFICHER "donner une valeur xB" 14 AFFICHER "LIRE xB"
15 AFFICHER "donner une valeur yB" 16 AFFICHER "LIRE yB" 17 xI
PREND_LA_VALEUR (xA+xB)/2 18 yI PREND_LA_VALEUR (yA+yB)/2 19
AFFICHER "l'abscisse du milileu I de [AB] est:xI=" 20 AFFICHER
"LIRE xI" 21 AFFICHER "l'ordonne du milieu I de[AB] est: yI=" 22
AFFICHER "LIRE yI" 23 FIN_ALGORITHME
- Page 18
- Isabelle ABOU18 EXEMPLE DENONCE Considrons les points A(-1;1),
B(1;2) et C(3;-2). Utiliser un logiciel de gomtrie pour faire le
graphique. 1/ Placer ces points dans un repre orthonorm. 2/
Dessiner le triangle ABC. 3/ Que peut-on conjecturer sur ce
triangle? 4/ Calculer les mesures des longueurs des cts [AB], [BC],
et [AC]. 5/ - Le triangle ABC est-il quilatral? - Le triangle ABC
est-il isocle? - Le triangle ABC est-il rectangle? 6/ En dduire la
position du centre I du cercle circonscrit au triangle ABC. 7/
Calculer les coordonnes de I, et donner la valeur du rayon de ce
cercle. Tracer ce cercle. 8/ Soit E(3;1). Montrer que E est un
point de ce cercle.
- Page 19
- Isabelle ABOU19 COMMENTAIRES PEDAGOGIQUES Cet nonc permet de
montrer la ncessit de lalgorithme de calcul de la distance entre
deux points qui intervient plusieurs fois. On introduit les
algorithmes permettant de tester si un triangle est quilatral,
isocle, rectangle. Il y a une progressivit dans la difficult de ces
algorithmes car les tests logiques sont de difficults croissantes.
Le test du triangle quilatral utilise le connecteur logique ET avec
deux conditions, dans une structure SI...ALORSSINON. Le test du
triangle isocle utilise le connecteur logique OU avec trois
conditions, dans une structure SIALORSSINON. Le test du triangle
rectangle utilise plusieurs tests imbriqus SIALORSSINON. On peut
rinvestir tous ces algorithmes dans dautres exercices.
- Page 20 (xB,yB) 20 D PREND_LA_VALEUR
pow((xB-xA),2)+pow((yB-yA),2) 21 dist PREND_LA_VALEUR sqrt(D) 22
AFFICHER "la distance AB^2 vaut " 23 AFFICHER D 24 AFFICHER "La
distance AB vaut " 25 AFFICHER dist 26 FIN_ALGORITHME">
- Isabelle ABOU20 PROGRAMME ALGOBOX DISTANCE ENTRE 2 POINTS 1
VARIABLES 2 xA EST_DU_TYPE NOMBRE 3 yA EST_DU_TYPE NOMBRE 4 xB
EST_DU_TYPE NOMBRE 5 yB EST_DU_TYPE NOMBRE 6 D EST_DU_TYPE NOMBRE 7
dist EST_DU_TYPE NOMBRE 8 DEBUT_ALGORITHME 9 AFFICHER "donner une
valeur xA" 10 LIRE xA 11 AFFICHER "donner une valeur yA" 12 LIRE yA
13 AFFICHER "donner une valeur xB" 14 LIRE xB 15 AFFICHER "donner
une valeur yB" 16 LIRE yB 17 TRACER_POINT (xA,yA) 18 TRACER_POINT
(xB,yB) 19 TRACER_SEGMENT (xA,yA)->(xB,yB) 20 D PREND_LA_VALEUR
pow((xB-xA),2)+pow((yB-yA),2) 21 dist PREND_LA_VALEUR sqrt(D) 22
AFFICHER "la distance AB^2 vaut " 23 AFFICHER D 24 AFFICHER "La
distance AB vaut " 25 AFFICHER dist 26 FIN_ALGORITHME
- Page 21 (xB,yB) 28 TRACER_SEGMENT (xA,yA)->(xC,yC) 29
TRACER_SEGMENT (xB,yB)->(xC,yC) 30 D1 PREND_LA_VALEUR
pow((xB-xA),2)+pow((yB-yA),2) 31 D2 PREND_LA_VALEUR
pow((xC-xA),2)+pow((yC-yA),2) 32 D3 PREND_LA_VALEUR
pow((xC-xB),2)+pow((yC-yB),2) 33 AFFICHER "la distance AB^2 vaut "
34 AFFICHER D1 35 AFFICHER "la distance AC^2 vaut " 36 AFFICHER D2
37 AFFICHER "la distance BC^2 vaut " 38 AFFICHER D3 39 SI ((D1==D2)
ET (D2==D3) ) ALORS 40 DEBUT_SI 41 AFFICHER "le triangle est
quilatral" 42 FIN_SI 43 SINON 44 DEBUT_SINON 45 AFFICHER "le
triangle n'est pas quilatral" 46 FIN_SINON 47
FIN_ALGORITHME">
- Isabelle ABOU21 PROGRAMME ALGOBOX TRIANGLE EQUILATERAL 1
VARIABLES 2 xA EST_DU_TYPE NOMBRE 3 yA EST_DU_TYPE NOMBRE 4 xB
EST_DU_TYPE NOMBRE 5 yB EST_DU_TYPE NOMBRE 6 xC EST_DU_TYPE NOMBRE
7 yC EST_DU_TYPE NOMBRE 8 D1 EST_DU_TYPE NOMBRE 9 D2 EST_DU_TYPE
NOMBRE 10 D3 EST_DU_TYPE NOMBRE 11 DEBUT_ALGORITHME 12 AFFICHER
"donner une valeur xA" 13 LIRE xA 14 AFFICHER "donner une valeur
yA" 15 LIRE yA 16 AFFICHER "donner une valeur xB" 17 LIRE xB 18
AFFICHER "donner une valeur yB" 19 LIRE yB 20 AFFICHER "donner une
valeur xC" 21 LIRE xC 22 AFFICHER "donner une valeur yC" 23 LIRE yC
24 TRACER_POINT (xA,yA) 25 TRACER_POINT (xB,yB) 26 TRACER_POINT
(xC,yC) 27 TRACER_SEGMENT (xA,yA)->(xB,yB) 28 TRACER_SEGMENT
(xA,yA)->(xC,yC) 29 TRACER_SEGMENT (xB,yB)->(xC,yC) 30 D1
PREND_LA_VALEUR pow((xB-xA),2)+pow((yB-yA),2) 31 D2 PREND_LA_VALEUR
pow((xC-xA),2)+pow((yC-yA),2) 32 D3 PREND_LA_VALEUR
pow((xC-xB),2)+pow((yC-yB),2) 33 AFFICHER "la distance AB^2 vaut "
34 AFFICHER D1 35 AFFICHER "la distance AC^2 vaut " 36 AFFICHER D2
37 AFFICHER "la distance BC^2 vaut " 38 AFFICHER D3 39 SI ((D1==D2)
ET (D2==D3) ) ALORS 40 DEBUT_SI 41 AFFICHER "le triangle est
quilatral" 42 FIN_SI 43 SINON 44 DEBUT_SINON 45 AFFICHER "le
triangle n'est pas quilatral" 46 FIN_SINON 47 FIN_ALGORITHME
- Page 22
- Isabelle ABOU22 PROGRAMME ALGOBOX TRIANGLE ISOCELE Tout le dbut
de lalgorithme jusqu la ligne 38, est identique lalgorithme
triangle quilatral . Ils ne diffrent qu partir des tests (ligne
39). 39 SI ((D1==D2) OU (D2==D3) OU (D1==D3)) ALORS 40 DEBUT_SI 41
AFFICHER "le triangle est isocle" 42 FIN_SI 43 SINON 44 DEBUT_SINON
45 AFFICHER "le triangle n'est pas isocle" 46 FIN_SINON 47
FIN_ALGORITHME
- Page 23
- Isabelle ABOU23 PROGRAMME ALGOBOX TRIANGLE RECTANGLE Tout le
dbut de lalgorithme jusqu la ligne 38, est identique lalgorithme
triangle quilatral ou triangle isocle . Ils ne diffrent qu partir
des tests (ligne 39). Nous avons fait le choix de ne pas introduire
de tri, jug ici trop difficile pour commencer. 39 SI (D3==D1+D2)
ALORS 40 DEBUT_SI 41 AFFICHER "le triangle est rectangle en A" 42
FIN_SI 43 SINON 44 DEBUT_SINON 45 SI (D2==D1+D3) ALORS 46 DEBUT_SI
47 AFFICHER "Le triangle est rectangle en B" 48 FIN_SI 49 SINON 50
DEBUT_SINON 51 SI (D1==D2+D3) ALORS 52 DEBUT_SI 53 AFFICHER "Le
triangle est rectangle en C" 54 FIN_SI 55 SINON 56 DEBUT_SINON 57
AFFICHER "Le triangle n'est pas rectangle" 58 FIN_SINON 59
FIN_SINON 60 FIN_SINON 61 FIN_ALGORITHME
- Page 24
- Isabelle ABOU24 EXECUTION PAS A PAS AVEC UN TRIANGLE QUELCONQUE
#1 Nombres/chaines (ligne 13) -> xA:1 | yA:0 | xB:0 | yB:0 |
xC:0 | yC:0 | D1:0 | D2:0 | D3:0 #2 Nombres/chaines (ligne 15)
-> xA:1 | yA:2 | xB:0 | yB:0 | xC:0 | yC:0 | D1:0 | D2:0 | D3:0
#3 Nombres/chaines (ligne 17) -> xA:1 | yA:2 | xB:3 | yB:0 |
xC:0 | yC:0 | D1:0 | D2:0 | D3:0 #4 Nombres/chaines (ligne 19)
-> xA:1 | yA:2 | xB:3 | yB:4 | xC:0 | yC:0 | D1:0 | D2:0 | D3:0
#5 Nombres/chaines (ligne 21) -> xA:1 | yA:2 | xB:3 | yB:4 |
xC:8 | yC:0 | D1:0 | D2:0 | D3:0 #6 Nombres/chaines (ligne 23)
-> xA:1 | yA:2 | xB:3 | yB:4 | xC:8 | yC:5 | D1:0 | D2:0 | D3:0
#7 Nombres/chaines (ligne 24) -> xA:1 | yA:2 | xB:3 | yB:4 |
xC:8 | yC:5 | D1:8 | D2:0 | D3:0 #8 Nombres/chaines (ligne 25)
-> xA:1 | yA:2 | xB:3 | yB:4 | xC:8 | yC:5 | D1:8 | D2:58 | D3:0
#9 Nombres/chaines (ligne 26) -> xA:1 | yA:2 | xB:3 | yB:4 |
xC:8 | yC:5 | D1:8 | D2:58 | D3:26 Trac du point (1,2) (ligne 33)
Trac du point (3,4) (ligne 34) Trac du point (8,5) (ligne 35) Trac
du segment (1,2,3,4) (ligne 36) Trac du segment (1,2,8,5) (ligne
37) Trac du segment (3,4,8,5) (ligne 38) La condition n'est pas
vrifie (ligne 39) Entre dans le bloc DEBUT_SINON/FIN_SINON (ligne
44) La condition n'est pas vrifie (ligne 45) Entre dans le bloc
DEBUT_SINON/FIN_SINON (ligne 50) La condition n'est pas vrifie
(ligne 51) Entre dans le bloc DEBUT_SINON/FIN_SINON (ligne 56)
Sortie du bloc DEBUT_SINON/FIN_SINON (ligne 58) Sortie du bloc
DEBUT_SINON/FIN_SINON (ligne 59) Sortie du bloc
DEBUT_SINON/FIN_SINON (ligne 60) ***Algorithme lanc en mode pas
pas*** donner une valeur xA donner une valeur yA donner une valeur
xB donner une valeur yB donner une valeur xC donner une valeur yC
la distance AB^2 vaut 8 la distance AC^2 vaut 58 la distance BC^2
vaut 26 Le triangle n'est pas rectangle ***Algorithme
termin***
- Page 25
- Isabelle ABOU25 EXECUTION PAS A PAS AVEC UN TRIANGLE RECTANGLE
#1 Nombres/chaines (ligne 13) -> xA:1 | yA:0 | xB:0 | yB:0 |
xC:0 | yC:0 | D1:0 | D2:0 | D3:0 #2 Nombres/chaines (ligne 15)
-> xA:1 | yA:1 | xB:0 | yB:0 | xC:0 | yC:0 | D1:0 | D2:0 | D3:0
#3 Nombres/chaines (ligne 17) -> xA:1 | yA:1 | xB:1 | yB:0 |
xC:0 | yC:0 | D1:0 | D2:0 | D3:0 #4 Nombres/chaines (ligne 19)
-> xA:1 | yA:1 | xB:1 | yB:4 | xC:0 | yC:0 | D1:0 | D2:0 | D3:0
#5 Nombres/chaines (ligne 21) -> xA:1 | yA:1 | xB:1 | yB:4 |
xC:6 | yC:0 | D1:0 | D2:0 | D3:0 #6 Nombres/chaines (ligne 23)
-> xA:1 | yA:1 | xB:1 | yB:4 | xC:6 | yC:1 | D1:0 | D2:0 | D3:0
#7 Nombres/chaines (ligne 24) -> xA:1 | yA:1 | xB:1 | yB:4 |
xC:6 | yC:1 | D1:9 | D2:0 | D3:0 #8 Nombres/chaines (ligne 25)
-> xA:1 | yA:1 | xB:1 | yB:4 | xC:6 | yC:1 | D1:9 | D2:25 | D3:0
#9 Nombres/chaines (ligne 26) -> xA:1 | yA:1 | xB:1 | yB:4 |
xC:6 | yC:1 | D1:9 | D2:25 | D3:34 Trac du point (1,1) (ligne 33)
Trac du point (1,4) (ligne 34) Trac du point (6,1) (ligne 35) Trac
du segment (1,1,1,4) (ligne 36) Trac du segment (1,1,6,1) (ligne
37) Trac du segment (1,4,6,1) (ligne 38) La condition est vrifie
(ligne 39) Entre dans le bloc DEBUT_SI/FIN_SI (ligne 40) Sortie du
bloc DEBUT_SI/FIN_SI (ligne 42) ***Algorithme lanc en mode pas
pas*** donner une valeur xA donner une valeur yA donner une valeur
xB donner une valeur yB donner une valeur xC donner une valeur yC
la distance AB^2 vaut 9 la distance AC^2 vaut 25 la distance BC^2
vaut 34 le triangle est rectangle en A ***Algorithme termin***
- Page 26
- Isabelle ABOU26 ALGORITHMES ET PROGRAMMES POUR Dire si deux
vecteurs sont colinaires, deux droites parallles, des points
aligns. Trouver lquation dune droite partir des coordonnes de deux
points. Tracer dune droite comme fonction affine. Dire si deux
droites sont scantes, et calculer les coordonnes de leur point
dintersection ventuel.
- Page 27
- Isabelle ABOU27 VECTEURS On pourrait procder de la manire
suivante: - Commencer par lalgorithme calcul des coordonnes dun
vecteur partir des coordonnes de deux points , car cest un
algorithme calculatoire trs simple, - Continuer avec lalgorithme
vecteurs colinaires , - Finir, pour les lves qui en sont capables,
par lalgorithme quatrime point dun paralllogramme . Cela peut tre
intgr dans un nonc dexercice comme le suivant, qui peut tre fait
sur logiciel de gomtrie.
- Page 28
- Isabelle ABOU28 ENONCE Soit A(-3;1), B(2;-2), et C(1;6),
H(6;3). 1/ Les points A, B, C sont-ils aligns? 2/ Dmontrer que le
quadrilatre ABHC est un paralllogramme. 3/ Trouver les coordonnes
du point D tel que le quadrilatre ABCD soit un paralllogramme. 4/
Que reprsente le point C pour le segment [HD]? Le dmontrer. 5/
Trouver les coordonnes du point F symtrique de B par rapport
A.
- Page 29
- Isabelle ABOU29 ALGORITHME COORDONNEES DUN VECTEUR Dclaration
Variable xA, xB, yA, yB, e, f en Numrique Entre Ecrire Entrer
labscisse de A Lire xA Ecrire Entrer lordonne de A Lire yA Ecrire
Entrer labscisse de B Lire xB Ecrire Entrer lordonne de B Lire yB
Traitement Affecter e la valeur de xB-xA Affecter f la valeur de
yB-yA Sortie Afficher Labscisse du vect(AB) est:, e Afficher
Lordonne du vect(AB) est:, f
- Page 30 (xB,yB) 46 TRACER_SEGMENT (xB,yB)->(xC,yC) 47
TRACER_SEGMENT (xC,yC)->(xD,yD) 48 TRACER_SEGMENT
(xD,yD)->(xA,yA) 49 FIN_ALGORITHME">
- Isabelle ABOU30 PROGRAMME ALGOBOX 4 ime POINT DUN
PARALLELOGRAMME 1 VARIABLES 2 xA EST_DU_TYPE NOMBRE 3 yA
EST_DU_TYPE NOMBRE 4 xB EST_DU_TYPE NOMBRE 5 yB EST_DU_TYPE NOMBRE
6 xC EST_DU_TYPE NOMBRE 7 yC EST_DU_TYPE NOMBRE 8 xD EST_DU_TYPE
NOMBRE 9 yD EST_DU_TYPE NOMBRE 10 DEBUT_ALGORITHME 11 AFFICHER
"Donner une valeur xA" 12 LIRE xA 13 AFFICHER "xA=" 14 AFFICHER xA
15 AFFICHER "Donner une valeur yA" 16 LIRE yA 17 AFFICHER "yA=" 18
AFFICHER yA 19 AFFICHER "Donner une valeur xB" 20 LIRE xB 21
AFFICHER "xB=" 22 AFFICHER xB 23 AFFICHER "Donner une valeur yB" 24
LIRE yB 25 AFFICHER "yB=" 26 AFFICHER yB 27 AFFICHER "Donner une
valeur xC" 28 LIRE xC 29 AFFICHER "xC=" 30 AFFICHER xC 31 AFFICHER
"Donner une valeur yC" 32 LIRE yC 33 AFFICHER "yC=" 34 AFFICHER yC
35 xD PREND_LA_VALEUR xC-(xB-xA) 36 yD PREND_LA_VALEUR yC-(yB-yA)
37 AFFICHER "L'abscisse de D tel que ABCD paralllogramme est xD="
38 AFFICHER xD 39 AFFICHER "L'ordonne de D tel que ABCD
paralllogramme est yD=" 40 AFFICHER yD 41 TRACER_POINT (xA,yA) 42
TRACER_POINT (xB,yB) 43 TRACER_POINT (xC,yC) 44 TRACER_POINT
(xD,yD) 45 TRACER_SEGMENT (xA,yA)->(xB,yB) 46 TRACER_SEGMENT
(xB,yB)->(xC,yC) 47 TRACER_SEGMENT (xC,yC)->(xD,yD) 48
TRACER_SEGMENT (xD,yD)->(xA,yA) 49 FIN_ALGORITHME
- Page 31
- Isabelle ABOU31 EXECUTION AVEC LES VALEURS DE LEXERCICE
***Algorithme lanc*** Donner une valeur xA xA=-3 Donner une valeur
yA yA=1 Donner une valeur xB xB=2 Donner une valeur yB yB=-2 Donner
une valeur xC xC=1 Donner une valeur yC yC=6 L'abscisse de D tel
que ABCD paralllogramme est xD=-4 L'ordonne de D tel que ABCD
paralllogramme est yD=9 ***Algorithme termin***
- Page 32
- Isabelle ABOU32 DROITES - Pour commencer algorithme quation
dune droite partir des coordonnes de deux points ; - Puis,
rsolution dun systme 2X2, les quations rduites des droites tant
donnes. A intgrer dans des noncs dexercices.
- Page 33
- Isabelle ABOU33 ALGORITHME EQUATION DUNE DROITE Dclaration
Variable xA, xB, yA, yB, a, b en Numrique Entre Ecrire Entrer
labscisse de A Lire xA Ecrire Entrer lordonne de A Lire yA Ecrire
Entrer labscisse de B Lire xB Ecrire Entrer lordonne de B Lire yB
Traitement Affecter a la valeur de (yB-yA)/(xB-xA) Affecter b la
valeur de yA-a*xA Sortie Afficher Le coefficient directeur est :, a
Afficher Lordonne lorigine est :, b Afficher Lquation de la droite
est : y =, a, x+, b
- Page 34
- Isabelle ABOU34 PROBLEME: RESOLUTION DUN SYSTEME LINEAIRE 2X2
crire un algorithme qui indique si deux droites, dont les quations
ont t crites sous forme rduite (y=m*x+p), sont parallles.
Lalgorithme donnera ensuite les coordonnes du point dintersection
ventuel.
- Page 35
- Isabelle ABOU35 ALGORITHME RESOLUTION DUN SYSTEME 2X2
Dclaration Variable m, n, p, q, xT, yT en Numrique Entre Entrer le
coefficient directeur de la droite (D) Lire m Entrer lordonne
lorigine de la droite (D) Lire p Entrer le coefficient directeur de
la droite (D) Lire n Entrer lordonne lorigine de la droite (D) Lire
q Traitement et Sortie Si (m=n) Alors Si (pq) Alors crire Les deux
droites sont strictement parallles Sinon crire Les deux droites
sont confondues Sinon Affecter xT la valeur (p-q)/(n-m) Affecter yT
la valeur m*xT+p Ecrire Les deux droites sont scantes, et ont pour
point dintersection le point T de coordonnes: (, xT, ;, yT, )
- Page 36
- Isabelle ABOU36 PROGRAMME ALGOBOX RESOLUTION SYSTEME 2X2 1
VARIABLES 2 m EST_DU_TYPE NOMBRE 3 p EST_DU_TYPE NOMBRE 4 n
EST_DU_TYPE NOMBRE 5 q EST_DU_TYPE NOMBRE 6 xT EST_DU_TYPE NOMBRE 7
yT EST_DU_TYPE NOMBRE 8 DEBUT_ALGORITHME 9 AFFICHER "Entrer le
coefficient directeur de la premire droite" 10 LIRE m 11 AFFICHER
"m=" 12 AFFICHER m 13 AFFICHER "Entrer l'ordonne l'origine de la
premire droite " 14 LIRE p 15 AFFICHER "p=" 16 AFFICHER p 17
AFFICHER "Entrer le coefficient directeur de la deuxime droite" 18
LIRE n 19 AFFICHER "n=" 20 AFFICHER n 21 AFFICHER "Entrer l'ordonne
l'origine dela deuxime droite" 22 LIRE q 23 AFFICHER "q=" 24
AFFICHER q 25 SI (m==n) ALORS 26 DEBUT_SI 27 SI (p==q) ALORS 28
DEBUT_SI 29 AFFICHER "Les deux droites sont confondues" 30 FIN_SI
31 SINON 32 DEBUT_SINON 33 AFFICHER "Les deux droites sont
strictement parallles" 34 FIN_SINON 35 FIN_SI 36 SINON 37
DEBUT_SINON 38 xT PREND_LA_VALEUR (p-q)/(n-m) 39 yT PREND_LA_VALEUR
m*xT+p 40 AFFICHER "Les deux droites sont scantes et ont pour point
d'intersection T" 41 AFFICHER "xT=" 42 AFFICHER xT 43 AFFICHER
"yT=" 44 AFFICHER yT 45 FIN_SINON 46 FIN_ALGORITHME
- Page 37
- Isabelle ABOU37 EXECUTION DROITES SECANTES ***Algorithme
lanc*** Entrer le coefficient directeur de la premire droite m=1
Entrer l'ordonne l'origine de la premire droite p=2 Entrer le
coefficient directeur de la deuxime droite n=6 Entrer l'ordonne
l'origine de la deuxime droite q=7 Les deux droites sont scantes et
ont pour point d'intersection T xT=-1 yT=1 ***Algorithme
termin***
- Page 38
- Isabelle ABOU38 EXECUTION DROITES PARALLELES ***Algorithme
lanc*** Entrer le coefficient directeur de la premire droite m=-3
Entrer l'ordonne l'origine de la premire droite p=5 Entrer le
coefficient directeur de la deuxime droite n=-3 Entrer l'ordonne
l'origine de la deuxime droite q=6 Les deux droites sont
strictement parallles ***Algorithme termin***
- Page 39
- Isabelle ABOU39 UTILISATION DES RESSOURCES Le document
daccompagnement Ressources pour la classe de seconde Algorithmique-
fournit 10 algorithmes en gomtrie. 1/ Points, segments et distances
Algorithme 1: Milieu dun segment Algorithme 2: Quatrime sommet dun
paralllogramme Algorithme 3: Trac dun segment dans une fentre
adapte Algorithme 4: Trac dun polygone dans une fentre adapte
Algorithme 5: Tracs de segments points par points Algorithme 6:
Distance de deux points Algorithme 7: Triangle isocle en A 2/
Algorithmes divers Algorithme 8: Fentre orthonormale automatique
sur calculatrice Algorithme 9: Trac dun cercle dans une fentre
orthonormale Algorithme 10: Jeu de Marelle (ou Marelle de
Bresenham). Nous en exposerons certains.
- Page 40
- Isabelle ABOU40 TRACE DUN SEGMENT DANS UNE FENETRE ADAPTEE
Saisir les coordonnes des extrmits du segment. Dterminer la fentre
daffichage : Rcuprer les abscisses et ordonnes minimales et
maximales des deux points ; Diminuer un peu les valeurs minimales
et augmenter un peu les valeurs maximales (pour ce faire, on
choisit dlargir de chaque ct dun cinquime de lcart entre le maximum
et le minimum pour chacune des coordonnes).
- Page 41
- Isabelle ABOU41 ALGORITHME Variables xA, yA, xB, yB xmin, xmax,
ymin, ymax // Bornes de la fentre deltax, deltay // largissement de
la fentre Entres Saisir xA, yA, xB, yB Traitement Si xA
- Isabelle ABOU51 PROGRAMME ALGOBOX COURBE DUNE FONCTION 1
VARIABLES 2 x EST_DU_TYPE NOMBRE 3 y EST_DU_TYPE NOMBRE 4 a
EST_DU_TYPE NOMBRE 5 b EST_DU_TYPE NOMBRE 6 DEBUT_ALGORITHME 7
AFFICHER "Entrer la borne infrieure de l'intervalle" 8 LIRE a 9 x
PREND_LA_VALEUR a 10 AFFICHER "Entrer la borne suprieure de
l'intervalle" 11 LIRE b 12 TANT_QUE ((x>=a) ET (x
- Isabelle ABOU56 PROGRAMME ALGOBOX SALAIRE DUN EMPLOYE PROGRAMME
ALGOBOX SALAIRE DUN EMPLOYE 1 VARIABLES 2 sh EST_DU_TYPE NOMBRE 3
nh EST_DU_TYPE NOMBRE 4 S EST_DU_TYPE NOMBRE 5 DEBUT_ALGORITHME 6
AFFICHER "Entrer le salaire horaire de l'employ" 7 LIRE sh 8
AFFICHER "Le salaire horaire vaut: " 9 AFFICHER sh 10 AFFICHER
"Entrer le nombre d'heures effectues" 11 LIRE nh 12 AFFICHER "Le
nombre d'heures effectues est:" 13 AFFICHER nh 14 SI ((nh 240))
ALORS 15 DEBUT_SI 16 AFFICHER "Le nombre d'heures est incorrect" 17
FIN_SI 18 SINON 19 DEBUT_SINON 20 SI ((nh>=0) ET (nh=160) ET
(nh=200) ET (nhmax alors max prend la valeur y Si yX Y1 -> C Y1
-> D (B-A)/NP For(K,1,N) X">
- Isabelle ABOU63 TRADUCTION SUR CALCULATRICES Calculatrice TI
:Calculatrice CASIO : Input A Input B Input N A ->X Y1 -> C
Y1 -> D (B-A)/NP For(K,1,N) X+P -> X If Y1>D Then Y1 ->
D End If Y1 C End Disp C,D A -> Xmin B -> Xmax C -> Ymin D
-> Ymax DispGraph ? -> A ? -> B ? -> N A -> X Y1
-> C Y1 -> D (B-A)/N -> P For K -> 1 To N X+P -> X
If Y1>D Then Y1 -> D Ifend If Y1 C Ifend Next C D A ->
Xmin B -> Xmax C -> Ymin D -> Ymax DrawGraph
- Page 64
- Isabelle ABOU64 REMARQUES Dans le cadre de la rsolution de
problme, il convient de bien faire remarquer que, dans presque tous
les cas, les rponses fournies par le programme ne sont que des
valeurs approches des extremums, et que dans certains cas, certes
loigns des fonctions que les lves rencontrent, les valeurs sorties
par le logiciel peuvent tre fort loignes des rponses exactes. Un
exemple : pour f (x )= 1/ (x + 0,001) sur [0,95 ;0,95] avec un pas
de 0,1 on trouve avec lalgorithme une valeur maximale denviron 285
alors que le maximum de f est exactement 1000. Lorsque la fonction
f est strictement croissante puis strictement dcroissante sur [a ;b
], il est possible dtre plus prcis : si on a trouv une valeur
maximale pour x=a + k.pas, on sait que le maximum de f sera atteint
dans lintervalle [a + (k1). pas ; a + (k+1). pas ] ; on peut donc
prendre a + k.pas comme valeur approche de labscisse du maximum
avec une erreur infrieure ou gale pas.
- Page 65
- Isabelle ABOU65 FENTRAGE HORIZONTAL On se donne une fonction f
dfinie sur R. Quel est son comportement lorsque la variable prend
des valeurs trs grandes ? On change ici de point de vue, on ntudie
plus la fonction sur un intervalle ferm mais un intervalle ouvert
de R. Algorithme : exploration de grandes valeurs de la variable
Lobjet de cet algorithme est de rechercher des informations sur le
maximum de la fonction (sil existe !). Explorer efficacement un
intervalle trs grand ne peut se faire en aveugle comme le fait une
calculatrice, cest--dire par le biais dune progression arithmtique
de la variable. On envisage alors des progressions plus rapides. La
mise en forme propose ci-dessous explore les images par f des carrs
des entiers.
- Page 66
- Isabelle ABOU66 ALGORITHME Initialisation f, la fonction tudier
p, la progression de la variable, exemple : p(k) = k N, le nombre
ditrations max prend la valeur f (0) x prend la valeur 0, ce sera
lantcdent de max. Traitement Pour k variant de 1 N Si f ( p(k)
)>max alors x prend la valeur p(k) max prend la valeur f (x)
Sortie Affiche x et max.
- Page 67
- Isabelle ABOU67 TRADUCTION SUR CALCULATRICES Calculatrice TI
:Calculatrice Casio : Input N 0 ->X 0 -> C Y1 -> D
For(K,1,N) K^2 -> X If Y1>D Then Y1 -> D X -> C End
Disp C,D ? -> N 0 -> X 0 -> C Y1 -> C Y1 -> D For 1
-> K To N K^2 -> X If Y1>D Then Y1 -> D X -> C Ifend
Next C D
- Page 68
- Isabelle ABOU68 REMARQUES Cet algorithme peut ensuite tre dclin
pour tester la monotonie, ou pour explorer de grandes valeurs
ngatives, ou de petites valeurs proches de 0 et dans tous les cas
on fera prendre conscience du caractre empirique de la rponse
obtenue. La tabulation de la fonction selon ce principe permet
dapprhender le comportement asymptotique (et dintroduire de faon
empirique la notion de limite dans le cadre dune rsolution de
problme o cette question est porteuse de sens). Pour une
exploration plus efficace, le choix dune croissance plus marque
peut se faire sentir. Dans ce cas, une progression gomtrique de la
variable est une stratgie judicieuse.
- Page 69
- Isabelle ABOU69 PROBABILITES ET STATISTIQUES
- Page 70
- Isabelle ABOU70 PISTES DU PROGRAMME STATISTIQUES : Calcul des
paramtres dune srie statistique (moyenne, frquences).
chantillonnage Un chantillon est-il reprsentatif (ou conforme), au
risque de 5%? Mise en place dune simulation avec utilisation des
fonctions logiques dun tableur ou dune calculatrice PROBABILITES:
Rptition dexpriences alatoires, simulation cest--dire approche
frquentielle des probabilits. Algorithmes pour des marches
alatoires.
- Page 71
- Isabelle ABOU71 EXEMPLE DACTIVITE ECHANTILLON CONFORME On
considre un caractre, il peut sagir dun caractre gntique
(lappartenance au groupe sanguin O par exemple) pour une population
humaine. On considre la proportion p de personnes dans la
population qui appartiennent ce groupe. On donne un chantillon de
taille n et on calcule la frquence f de personnes de lchantillon
appartenant ce groupe. Il sagit de savoir si cet chantillon est
reprsentatif de la population totale au seuil 95%.
- Page 72
- Isabelle ABOU72 INTERVALLE DE FLUCTUATION Lintervalle de
fluctuation au seuil 95%, pour une proportion p cest- -dire
correspondant une variable alatoire suivant une loi de Bernoulli
(approche par une loi normale quand n est grand) est [p- 1/rac(n);
p+1/rac(n)]. Cest--dire que lchantillon est reprsentatif ou
conforme si f appartient cet intervalle. Lalgorithme qui suit,
indique si lchantillon est conforme partir de lentre de la frquence
f comme donne, il comporte un contrle de saisie. On peut galement
crire un algorithme o on entrerait le nombre de personnes qui ont
le caractre tudi, et qui calculerait galement f grce
lalgorithme.
- Page 73
- Isabelle ABOU73 ALGORITHME ECHANTILLON CONFORME Dclaration
Variable p, f en Numrique Variable n en Entier Entre Afficher
Entrer la valeur de la proportion du caractre dans la population
totale ; Lire p Afficher Entrer la taille de lchantillon ; Lire n
TantQue n
- Page 74
- Isabelle ABOU74 PROGRAMME ALGOBOX ECHANTILLON CONFORME 1
VARIABLES 2 p EST_DU_TYPE NOMBRE 3 f EST_DU_TYPE NOMBRE 4 n
EST_DU_TYPE NOMBRE 5 DEBUT_ALGORITHME 6 AFFICHER "Entrer la
proportion du caractre, en valeur dcimale, dans la population
totale" 7 LIRE p 8 AFFICHER "Entrer la taille de l'chantillon" 9
LIRE n 10 TANT_QUE (n
- Isabelle ABOU93 PROGRAMME ALGOBOX MOYENNE DUN TRAJET 1
VARIABLES 2 H EST_DU_TYPE NOMBRE 3 V EST_DU_TYPE NOMBRE 4 K
EST_DU_TYPE NOMBRE 5 N EST_DU_TYPE NOMBRE 6 H1 EST_DU_TYPE NOMBRE 7
V1 EST_DU_TYPE NOMBRE 8 I EST_DU_TYPE NOMBRE 9 S EST_DU_TYPE NOMBRE
10 Moyenne EST_DU_TYPE NOMBRE 11 DEBUT_ALGORITHME 12 S
PREND_LA_VALEUR 0 13 POUR I ALLANT_DE 1 A 1000 14 DEBUT_POUR 15 H
PREND_LA_VALEUR 0 16 V PREND_LA_VALEUR 0 17 N PREND_LA_VALEUR 0 18
K PREND_LA_VALEUR floor(2*random( )) 19 SI (K==0) ALORS 20 DEBUT_SI
21 V PREND_LA_VALEUR V+1 22 FIN_SI 23 SINON 24 DEBUT_SINON 25 H
PREND_LA_VALEUR H+1 26 FIN_SINON 27 H1 PREND_LA_VALEUR
H-2*floor(H/2) 28 V1 PREND_LA_VALEUR V-2*floor(V/2) 29 TANT_QUE
(V1>0 OU H1>0) FAIRE 30 DEBUT_TANT_QUE 31 K PREND_LA_VALEUR
floor(2*random( )) 32 SI (K==0) ALORS 33 DEBUT_SI 34 V
PREND_LA_VALEUR V+1 35 FIN_SI 36 SINON 37 DEBUT_SINON 38 H
PREND_LA_VALEUR H+1 39 FIN_SINON 40 H1 PREND_LA_VALEUR
H-2*floor(H/2) 41 V1 PREND_LA_VALEUR V-2*floor(V/2) 42 FIN_TANT_QUE
43 N PREND_LA_VALEUR V+H 44 S PREND_LA_VALEUR S+N 45 FIN_POUR 46
Moyenne PREND_LA_VALEUR S/1000 47 AFFICHER "La valeur moyenne du
trajet est : " 48 AFFICHER Moyenne 49 FIN_ALGORITHME
- Page 94
- Isabelle ABOU94 CONCLUSION 1ire simulation La moyenne des
trajets est: 3.95 2ime simulation La moyenne des trajets est: 3.874
3ime simulation La moyenne des trajets est: 3.702 4ime simulation
La moyenne des trajets est: 3.904 5ime simulation La moyenne des
trajets est: 3.894 6ime simulation La moyenne des trajets est:
4.022 Aprs plusieurs simulations de 1000 trajets, on constate que
la valeur de la dure moyenne d'un trajet tend vers 4 qui est la
valeur thorique.
- Page 95
- Isabelle ABOU95 UTILISATION DES RESSOURCES Le document
daccompagnement Ressources pour la classe de seconde Algorithmique-
fournit 4 algorithmes sur les probabilits. - Le jeu du livre et de
la tortue (3 algorithmes) Algorithme 1: simulation dune partie sans
boucle Algorithme 2: cumuler un grand nombre dexpriences Algorithme
3: avec une structure itrative conditionnelle - Concidence des
dates danniversaire dans une classe: Algorithme 4. Le document
daccompagnement Ressources pour la classe de seconde Probabilits et
Statistiques- fournit 6 algorithmes sur les probabilits. -
Concidence des dates danniversaire pour 12 personnes en utilisant
un arbre. 2 algorithmes proposs, analyser - Marche alatoire et
temps moyen Sauts de puce: 3 algorithmes proposs, analyser - Nombre
de lancers pour sortir tous les numros dun d cubique. L aussi, nous
avons choisi de nexposer quun certain nombre de ces algorithmes
puisquils sont disposition dans ces documents.
- Page 96
- Isabelle ABOU96 LE JEU DU LIEVRE ET DE LA TORTUE Rgle du jeu.
chaque tour, on lance un d. Si le 6 sort, alors le livre gagne la
partie, sinon la tortue avance dune case. La tortue gagne quand
elle a avanc 6 fois. Question : le jeu est-il lavantage du livre ou
de la tortue ? Algorithme 1 : Simulation dune partie sans boucle La
partie se finit en au plus six lancs. Il est donc possible de
simuler une partie sans avoir recours une boucle.
- Page 97
- Isabelle ABOU97 ALGORITHME 1 Variables d : la face du d tire au
hasard tour : compte le nombre de tours que dure la partie
Initialisation d prend une valeur entire alatoire entre 1 et 6
compris tour prend la valeur 1 Traitement Si d < 6 alors d prend
une valeur entire alatoire entre 1 et 6 compris tour augmente de 1
Si d < 6 alors d prend une valeur entire alatoire entre 1 et 6
compris tour augmente de 1 Si d < 6 alors d prend une valeur
entire alatoire entre 1 et 6 compris tour augmente de 1 Si d < 6
alors d prend une valeur entire alatoire entre 1 et 6 compris tour
augmente de 1 Si d < 6 alors d prend une valeur entire alatoire
entre 1 et 6 compris tour augmente de 1 Sortie Si d = 6 alors
Affiche Le livre gagne sinon Affiche La tortue gagne Affiche
tour
- Page 98
- Isabelle ABOU98 REMARQUES Si le support de programmation sur
lequel est transpos lalgorithme ne dispose pas des fonctionnalits
de recopie de texte, la mise en place dune boucle peut se
justifier. Il est possible de modifier un peu la modlisation du
jeu, afin de simplifier sa mise en uvre, en particulier sur tableur
; en effet, la partie est quivalente aux lancers de six ds. Le
livre gagne sil existe au moins un six parmi les rsultats. De cette
faon un seul test peut suffire, condition de disposer de
linstruction approprie (comme linstruction NB.SI du tableur).
Cependant, larithmtique boolenne peut aussi se modliser avec des
sommes ou des produits dentiers. Par exemple, le produit des six
nombres (6 d) vaut 0 si et seulement il y a au moins un six.
- Page 99
- Isabelle ABOU99 ALGORITHME 2 Algorithme 2: Cumuler un grand
nombre dexpriences Il suffit damnager le programme afin dinsrer la
simulation dune partie dans une boucle et de compter le nombre de
parties gagnes par le livre ou la tortue. Lintrt dun langage de
programmation devient vident: litration est trs rapide aussi bien
crire, modifier qu excuter (ce qui nest pas le cas avec le
tableur). On pourra noter, cette occasion, que certains langages
sont beaucoup plus rapides que dautres.
- Page 100
- Isabelle ABOU100 ALGORITHME 2 Variables d : la face du d tire
au hasard N : le nombre de parties simuler k : le compteur de
boucle tortue : le nombre de parties gagnes par la tortue
Initialisation tortue prend une valeur 0 Traitement Pour k de 1 N d
prend une valeur entire alatoire entre 1 et 6 compris Si d < 6
alors d prend une valeur entire alatoire entre 1 et 6 compris Si d
< 6 alors d prend une valeur entire alatoire entre 1 et 6
compris Si d < 6 alors d prend une valeur entire alatoire entre
1 et 6 compris Si d < 6 alors d prend une valeur entire alatoire
entre 1 et 6 compris Si d < 6 alors d prend une valeur entire
alatoire entre 1 et 6 compris Si d < 6 alors tortue prend la
valeur tortue + 1 Sortie Affiche tortue.
- Page 101
- Isabelle ABOU101 ALGORITHME 3 Algorithme 3 : Avec une structure
itrative conditionnelle. videmment, plutt que de rpter 6 fois les
mmes instructions, il est possible de simuler une partie laide dune
boucle. De cette faon, il sera facile dexprimenter de nouveaux jeux
en modifiant le nombre de cases que doit parcourir la tortue.
Variables d : la face du d tire au hasard case : le numro de la
case sur laquelle se trouve la tortue N : le nombre de cases que
doit parcourir la tortue pour gagner. Initialisation N prend la
valeur 6 case prend la valeur 0. Traitement Rpte d prend une valeur
entire alatoire entre 1 et 6 inclus. Si d < 6 alors case prend
la valeur case + 1 jusqu [ d = 6 ou case = N ] Sortie Si case = N
alors Affiche La tortue gagne Sinon Affiche Le livre gagne
- Page 102
- Isabelle ABOU102 PROGRAMME SCILAB fourni par le document
ressource N=6; Ncase=0; de=0; while (de
- Isabelle ABOU125 EXECUTIONS ***Algorithme lanc*** 0 -> 51 1
-> 154 2 -> 77 3 -> 232 4 -> 116 5 -> 58 6 -> 29
7 -> 88 8 -> 44 9 -> 22 10 -> 11 11 -> 34 12 ->
17 13 -> 52 14 -> 26 15 -> 13 16 -> 40 17 -> 20 18
-> 10 19 -> 5 20 -> 16 21 -> 8 22 -> 4 23 -> 2 24
-> 1 25 -> 4 26 -> 2 27 -> 1 28 -> 4 29 -> 2 30
-> 1 97 -> 4 98 -> 2 99 -> 1 100 -> 4 Quelque soit
la valeur de u(0), au bout dun certain nombre de termes on aboutit
la valeur 1, et ensuite on retrouve toujours les valeurs 4, 2, 1
linfini.
- Page 126
- Isabelle ABOU126 FRACTALES Les objets fractals peuvent se
dfinir comme des structures obtenues par litration dun algorithme
gomtrique sur une figure. Pour construire des objets fractals, nous
dbutons avec un objet graphique quelconque (ligne, triangle, carr,
cube, etc). Par la suite, nous dfinissons une opration, ou une srie
doprations, qui ajouteront un lment de complexit lobjet initial.
Nous appliquons linfini, les transformations choisies lobjet de
dpart.
- Page 127
- Isabelle ABOU127 CONSTRUCTION DU FLOCON DE VON KOCH ALGORITHME:
Tracer un triangle quilatral. Remplacer le tiers central de chaque
ct par un point dont la longueur de chaque ct est gale aussi au
tiers du ct. Recommencer cette construction sur chaque ct des
triangles ainsi forms.
- Page 128
- Isabelle ABOU128 POIDS DUN ICEBERG Objectif : Un iceberg de 25
tonnes drive vers le sud. Chaque jour, il perd 10% de sa masse.
Combien de jours, faut-il, pour qu'il reste moins d'un kilogramme
de glace ? on utilise lalgorithme suivant, on peut galement faire
afficher le poids de liceberg par jour, par mois, etc. fonte d'un
iceberg
- Page 129
- Isabelle ABOU129 APPROXIMATION DE PI PAR LA METHODE DE MONTE
CARLO Cet exercice a pour but de calculer une approximation de la
valeur de en utilisant la mthode de Monte-Carlo et de la comparer
avec une approximation connue de la valeur de . Le principe de la
mthode de Monte-Carlo est de tirer au hasard des coordonnes x et y,
chacune dans lintervalle [0;1[. Si x + y < 1 alors le point P de
coordonnes (x,y) appartient au quart de disque D de centre (0,0) et
de rayon 1. La probabilit que P appartienne D est /4 (rapport de
laire de D et du carr lenglobant). Donc, si on tire au hasard n
points, et si p dentre eux appartiennent D, on sattend avoir : p/n
/4. On en tire une approximation de gal 4p/n.
- Page 130
- Isabelle ABOU130 RESOLUTION On peut faire cette activit sur
tableur ou crire un programme pour trouver lapproximation de PI
partir de simulations.
- Page 131
- Isabelle ABOU131 PROGRAMME ALGOBOX fourni dans le fichier
exemples 1 VARIABLES 2 x EST_DU_TYPE NOMBRE 3 y EST_DU_TYPE NOMBRE
4 i EST_DU_TYPE NOMBRE 5 approxpi EST_DU_TYPE NOMBRE 6 somme
EST_DU_TYPE NOMBRE 7 DEBUT_ALGORITHME 8 somme PREND_LA_VALEUR 0 9
POUR i ALLANT_DE 1 A 200000 10 DEBUT_POUR 11 x PREND_LA_VALEUR
random() 12 y PREND_LA_VALEUR random() 13 SI (x*x+y*y
- Isabelle ABOU136 PROCEDURE Cet algorithme conduit la procdure
suivante : procedure TourdeHanoi(n :entier ; a,b :entier) ; dbut Si
n > 0 alors dbut TourdeHanoi(n-1, a, 6-a-b) ;
Ecrire(a,->,6-a-b) ; TourdeHanoi(n-1, 6-a-b, b) ; fin ; Fin ;
Lien pour une animation : Tours de HanoTours de Hano
- Page 137
- Isabelle ABOU137 BIBLIOGRAPHIE EduSCOL Site :
eduscol.education.fr * Programme de mathmatiques pour la classe de
seconde gnrale et technologique. * Ressources pour la classe de
seconde -Algorithmique-. * Ressources pour la classe de seconde
-Probabilits et statistiques-. * Ressources pour la classe de
seconde -Fonctions-. * Ressources pour la classe de seconde
-Notations et raisonnement mathmatiques-. Activit du groupe
statistique et citoyennet de lIREM de Paris Nord sur le site de
lAcadmie de Grenoble dans les documents ressources de seconde.
Mathmatiques Informatique. 1 ire L. Ed Delagrave Site:
histoiredechiffres.free.fr Poids dun iceberg Approximation de PI
par la mthode de Monte Carlo. Eric Gillon Tours de Hano et nombre
de dplacements. Eric Gillon Cours algorithmique DEUG MIAS. Pierre
Liardet Site de mathmatiques de lAcadmie de la Runion. Lien avec
Icosaweb. Programmation. Alain Busser.