Les nouvelles technologies pour l’enseignement des mathématiques
Intégration des TICE dans l’enseignement des mathématiques

MathémaTICE, première revue en ligne destinée à promouvoir les TICE à travers l’enseignement des mathématiques.

Algorithmes en Lycée Professionnel

Nous avons travaillé, dans un premier article, sur les nouveaux programmes en Lycée Professionnel (lire en cliquant sur ce lien). Ce nouvel article se propose de lancer quelques pistes sur la question des algorithmes.

Article mis en ligne le 8 février 2020
dernière modification le 8 mars 2020

par Matthieu Brabant

Nous serons complémentaires d’autres articles déjà publiés sur MathémaTICE, en particulier

Les exemples et propositions de ces articles peuvent être repris, pour la plupart, en lycée professionnel. Nous invitons donc fortement les lectrices et lecteurs à les consulter.

Plus globalement l’ensemble des articles consacré à Python sont à lire :
http://revue.sesamath.net/spip.php?page=recherche&recherche=python&x=14&y=5

Pour commencer, nous proposons la lecture de ce document proposé par Eduscol (même s’il a été publié avant les nouveaux programmes) :

Cliquer sur l’image

Une introduction

La première difficulté, que ce soit pour les élèves ou pour les enseignant·es, c’est de commencer...
Ceci d’autant plus que cette nouveauté très importante dans les programmes est parallèle à des modifications très profondes et structurantes dans les lycées professionnels (avec la généralisation de l’Apprentissage par exemple ou encore la diminution du nombre d’heures en mathématiques de 2h à 1h30 par semaine).

Concernant les élèves, on pourrait imaginer que les connaissances acquises au collège permettent d’avancer rapidement. D’ailleurs, le programme en bac pro ne prévoit pas de reprendre tout cela : il propose d’introduire l’algorithmique dans les différentes parties du programme. Bref, l’utilisation des algorithmes est supposée comme acquise (ou du moins relativement maîtrisée).
Il n’en n’est rien, bien entendu, pour la grande majorité des élèves.

Concernant les enseignant·es de maths-sciences, il s’agit de se former, en partant de zéro sur le sujet pour la plupart d’entre nous, puisque c’est une nouveauté du programme. En soit, ce n’est pas un problème puisque cette nouveauté du programme peut être source d’apports didactiques intéressants.
Mais avec moins d’heures par semaine et parfois des modalités pédagogiques par alternance différentes selon les élèves (la « mixité des publics » étant de plus en plus développée ; « mixité des publics » nous entendons un mélange, dans la même classe, d’élèves sous statut scolaire et d’élèves sous contrat d’Apprentissage et donc n’ayant pas forcément les mêmes moments au lycée).

Sur les conseils de Rémi Angot, j’ai repris pour ré-introduire cette question (et découvrir pour ma part...) ces activités simples :
https://scratch.mit.edu/studios/3512199/

L’académie de Rouen (cliquer sur ce lien), et celle de Lyon (cliquer sur ce lien) proposent des outils d’auto-formation pour les enseignant·es avec des activités qui peuvent être reprises ensuite avec des élèves.
Et enfin, le gros travail dans l’académie d’Aix-Marseille (consulter en cliquant sur ce lien).

Enfin bien entendu ce fichier développé par Alain Busser : https://alainbusser.github.io/SofusPy974/

En classe, nous proposons d’utiliser la calculatrice Numworks qui propose un simulateur en ligne : https://www.numworks.com/fr/simulateur/

Enfin (et en particulier avec des élèves de la voie professionnelle des lycées souvent en difficultés scolaires), la notion même d’algorithme nécessite d’être revue.
Avec des élèves de Bac Pro Maintenance des Équipements Industriels j’ai proposé deux travaux :

  • lecture de l’ouvrage « L’art et la manière d’aborder son chef de service pour lui demander une augmentation » de Georges Pérec
  • construction d’une procédure décrivant tous les moments, de leur lever le matin à leur arrivée au lycée.
    Ces deux travaux permettent d’introduire la notion d’algorithme.

Deux exemples de base

Dans cette partie nous proposons deux petits exemples très simples s’intégrant dans le programme de maths en bac pro et permettant des liens avec les disciplines professionnelles. Devant les difficultés décrites plus haut, les premiers travaux avec les élèves ont été très très simples.

  • La moyenne

Nous proposons aux élèves le petit programme suivant :

  1. Valeur1=float(input("La première valeur est : "))
  2. Valeur2=float(input("La deuxième valeur est : "))
  3. Moyenne=(Valeur1+Valeur2)/2
  4. print("La moyenne est de : ", Moyenne)

Télécharger

Il permet simplement de calculer une moyenne. Nous demandons aux élèves à quoi peut servir ce programme, puis de l’utiliser pour calculer une moyenne. Enfin, nous montrons que ce petit programme ne permet de calculer que la moyenne de deux valeurs.
Nous proposons donc de rechercher un programme pour calculer la moyenne d’un nombre déterminé de valeurs. Avec mes élèves, ce travail se fait dans le cadre du groupe en pédagogie coopérative.
Nous aboutissons à ce type de programmes :

  1. NombreValeurs=int(input("Vous souhaitez faire la moyenne de combien de valeurs ? "))
  2. Somme=0.0
  3. for i in range(NombreValeurs):
  4.     print("Valeur n°",i+1," :")
  5.     Valeur=float(input())
  6.     Somme=Somme+Valeur
  7. Moyenne=......................
  8. MoyenneArrondie=round(Moyenne, 2)
  9. print("La moyenne est : ", MoyenneArrondie)}

Télécharger

Cette proposition est assez simple, mais elle permet d’engager les élèves concrètement sur un programme qu’elles et ils peuvent maîtriser et les encourager à un trouver un autre. Cela fonctionne assez bien, d’autant que la notion de moyenne est en général assez bien comprise.

  • Prix

Cette séquence est préférentiellement proposée aux élèves du secteur tertiaire.
Nous leur proposons pour commencer d’expliquer ce que calcule le programme ci-dessous en précisant que le PAB est le prix d’achat brut et le PAN le prix d’achat net.

  1. continuer = True
  2. while continuer != False :
  3.     PAB = float(input("Quel est le prix d'achat brut ?"))
  4.     print("PAB = ",PAB,"euros")
  5.     if PAB >= 10000 :
  6.         taux_remise = 0.05
  7.     else :
  8.         taux_remise=0
  9.     remise = PAB*taux_remise
  10.     PAN = PAB - remise
  11.     print ("Remise = ", remise, "euros")
  12.     print("Net commercial = ",PAN, "euros")
  13.     choix = input("Voulez vous recommencer l'exercice"
  14.     " avec d'autres nombres (oui/non)?")
  15.     if choix == "non" :
  16.         continuer = False
  17.         print("Fin")

Télécharger

Nous demandons ensuite la différence avec le programme ci-dessous :

  1. continuer = True
  2. while continuer != False :
  3.     PAB = float(input("Quel est le prix d'achat brut ?"))
  4.     print ("PAB = ",PAB,"euros")
  5.     mini = float(input("Choisissez le PAB au dessus duquel une remise de 5 %  est faite."))
  6.     if PAB >= mini :
  7.         taux_remise = 0.05
  8.     else :
  9.         taux_remise=0
  10.     remise = PAB*taux_remise
  11.     PAN = PAB - remise
  12.     print ("Remise =", remise, "euros")
  13.     print("PAN =",PAN, "euros")
  14.     choix = input("Voulez-vous recommencer l'exercice"
  15.     " avec d'autres nombres (oui/non) ?")
  16.     if choix == "non" :
  17.         continuer = False
  18.         print("Fin")

Télécharger

Aller plus loin ?

Il nous a été difficile, en si peu de temps et avec les difficultés venant de la réforme, d’aller plus loin avec des élèves sur cette question.
Nous en sommes donc restés à des séquences assez simples.
À ce jour, nous n’avons pas réussi à trouver un lien direct avec la programmation en atelier. Mais cela reste une piste à creuser.
Nous proposerons à l’avenir d’autres séquences. Nous appelons dès maintenant les lectrices et les lecteurs à proposer leurs contributions.