5 façons d'enseigner l'algorithmique au collège

Vous souhaitez créer une séance découverte sur l’algorithmique avec vos élèves, mais vous ne savez pas par où commencer ? Kwyk vous donne quelques astuces pour débuter tout en douceur.



Tout d’abord qu’est ce qu’un algorithme ?

Un algorithme est une suite d’instructions qui, une fois exécutées correctement, conduisent à un résultat donné. On peut très bien le comparer à une recette de cuisine ou aux indications de votre GPS. Les algorithmes sont omniprésents dans notre quotidien sans même que l’on s’en aperçoive.

Les attentes du nouveau programme

Ce dernier vise à entraîner les élèves à un nouveau type de raisonnement et surtout il va permettre d’approfondir de nouvelles compétences telles que la résolution de problèmes, la prise d’initiative ou encore la créativité, souvent difficiles à développer en mathématiques.
Notez bien que “la programmation n’a pas pour objectif de former des experts mais de leur apporter les clés de décryptage d’un monde numérique en constante évolution.”

Comment travailler l’algorithmique ?

Pour enseigner la programmation, il faut avant tout développer la démarche algorithmique chez l’élève. Pour cela, il y a certains éléments à connaître avant de commencer.



  1. Ne mélangez pas connaissance en cours d’acquisition et nouvelle démarche algorithmique

  1. Faites attention à la confusion entre la notion de variable informatique et la variable mathématique

  1. N’enfermez pas l’activité de l’élève dans une formalisation excessive. Il ne faut pas obliger les élèves à écrire tous les algorithmes en pseudo code, avec un langage extrêmement précis. Développer une démarche algorithmique peut également se retranscrire en langage courant, avec du texte ou encore des dessins.



Quelques exemples d’exercices pour enseigner l’algorithmique


1- Programme de calcul

Les programmes de calcul permettent à l’élève de donner du sens à la relation entre une variable et une expression littérale donnée.

Le tour de magie

Un magicien demande à un spectateur de penser à un nombre et de l’écrire sur une ardoise. Puis il l’invite à cacher cette ardoise le temps du numéro.

Il lui demande ensuite de soustraire 2 à ce nombre puis de multiplier cette différence par 3. Enfin, il lui demande d’ajouter 6 au résultat.

Le magicien demande alors au spectateur de dire à haute voix le résultat final.
Instantanément le magicien annonce le nombre pensé déclenchant une salve d’applaudissements alors que le spectateur brandit son ardoise en preuve.


A la suite de cet énoncé, l’élève doit faire ressortir les informations importantes afin de trouver la bonne conjoncture pour reconstituer le tour de magie.  

Cet exemple de programme est adapté à la classe de 6ème. Cependant, si vous souhaitez l’utiliser avec d’autres classes de niveau supérieur, il vous suffit simplement de corser les données. En somme, d’autres notions peuvent être abordées à travers les programmes de calcul.

Par exemple :

  • Le développement
  • L’expression littérale
  • La factorisation
  • La résolution d’équations
  • La notion d’inconnue
  • La notion de variable
2- Algorithme historique

Ces exercices algorithmiques ont pour but de repenser les opérations et réussir à les réaliser sans calculatrice.


La multiplication dans le papyrus de Rhind


  1. On décompose le plus grand nombre en puissance de 2
          Exemple : 25 = 16 + 8 + 1

  1. On construit la table des puissances de 2 du plus petit nombre
          Exemple : 13, 26, 52, 104

  1. On additionne les nombres de cette table faisant partie de la décomposition du premier nombre.
         Exemple :

25      x      13
1
2
4
8
16
13
26
52
104
208

Pour résumer : 25 x 13 = 13 + 104 + 208 = 325



3- Programme de constructions géométriques

Grâce aux programmes de constructions géométriques, vos élèves pourront réaliser des figures allant de la plus simple à la plus compliquée.


Suivre les indications pour effectuer  la construction géométrique :

  • Tracer un carré. On appelle (d) et (d’) les droites qui contiennent ses diagonales.

  • Répéter 3 fois l’instruction suivante :

Tracer le cercle inscrit dans le carré qui vient d’être construit, puis les 4 points d’intersection de ce cercle avec les droites (d) et (d’), puis le carré dont les sommets sont ces 4 points.



4- Problèmes de tri

Les algorithmes de tri consistent à ordonner un ensemble d'instructions en fonctions de “clés” sur lesquelles est définie une relation d’ordre.

Les cartes

Vous avez 10 cartes que vous avez à trier de la plus petite à la plus grande.

Vous ne pouvez en retourner que 2 à la fois au maximum.

Vous n’avez pas la “mémoire” de leur valeur d’une comparaison à l’autre.

Vous noterez le nombre de comparaisons que vous avez effectuées et le nombre maximum de comparaisons que votre tri peut engendrer.



L’objectif de cet exercice est de faire travailler les élèves par groupe de la manière dont ils le souhaitent (écrit, dessins, programmation par blocs, etc). Une fois terminé, chaque groupe présente son algorithme de tri.

Cette façon de travailler permettra aux élèves d’avoir une vision plus large de la programmation. En effet, chaque élève réfléchit différemment et il est intéressant de voir à travers cet exercice que plusieurs solutions différentes peuvent répondre à un même problème.


5- Problèmes de recherche

Les problèmes de recherche poussent à la réflexion pour trouver une solution grâce à un raisonnement construit.


La pesée

On dispose d’un ensemble de 12 boules identiques en apparence et au toucher, dont une est une boule surprise, plus lourde que les autres.

  • A l’aide d’une balance à deux plateaux et sans poids, peut-on retrouver la boule surprise ?

  • Si oui, quelle est la méthode permettant de la retrouver en effectuant le moins de pesées possibles ?




Ces exercices doivent être réalisés de façon progressive. Privilégiez une phase de recherche orale ou écrite avant de passer à la programmation sur ordinateur. Il est très important que les élèves comprennent en amont la démarche à suivre et le raisonnement à avoir pour arriver au résultat.


Scratch, comment développer un mini-projet ?

   Qu’est ce que Scratch ?


Scratch est un langage de programmation visuel. En manipulant des blocs colorés, il permet de créer des histoires interactives, des jeux, des animations,  de la musique, ou encore des présentations facilitant l’apprentissage et la création par soi-même.


   Comment ça marche?

Pour créer des programmes, vous serez amené à emboîter des “blocs” contenant des instructions. Une fois ces blocs assemblés, les personnages et les objets, appelés lutin, s’animeront et exécuteront chaque action dans l’ordre indiqué.




Quand on parle de programmation par blocs on a souvent tendance à l’associer directement à Scratch. Cependant, si vous n’êtes pas à l’aise avec Scratch, d’autres logiciels de programmation existent. A vous de choisir celui qui vous convient le mieux.


Voici quelques logiciels adaptés au milieu scolaire :


Programmation par blocs
  • HourOfCode
  • Kwyk
  • Blockly
Programmation de robots
  • Lego Mindstorm
Programmation de figures géométriques
  • Géotortue
Algorithme de tri
  • Tripatouille
Autre
  • Algobox (lycée)


Pour vous accompagner dans cet apprentissage, nous avons sélectionné quelques ressources qui pourraient être utiles à la préparation de vos séances.



Merci à Katia Odiot pour ses idées et son expérience dans l'enseignement des mathématiques.

Tessy Vingataramin - Avril 2016

Commentaires