Publié : 10 janvier 2016
Format PDF Enregistrer au format PDF

Séquence apprentissage de l’algorithmique

0 vote

Support pour l’enseignant :
http://www.grafikart.fr/formations/apprendre-algorithmique

Séance 1 : les algorithmes Mardi 1er septembre 2015 

1- Projection du film Les Sepas 18 « les algorithmes »
https://www.youtube.com/watch?v=hG9Jty7P6Es

2- ce que les élèves ont compris de la vidéo+ questions
=> écrire les questions au tableau + réponses

3- Trace écrite

Proposition (car à réaliser avec les élèves – éventuellement sous forme de carte mentale) :
« Pour qu’une machine (robot, ordinateur, tablette, smartphone…) exécute une action toute seule, une simple opération comme une addition ou un bidule compliqué comme piloter un vaisseau, il faut lui expliquer les moindres détails, tout ce qu’elle doit faire.
Ce qui permet de dire à une machine ce qu’elle doit faire s’appelle un algorithme.

Un algorithme est une façon de décrire en détails comment procéder pour faire quelque chose, une manière très efficace de faire les choses sans avoir besoin de réfléchir, même pour une machine complètement stupide.
On peut comparer un algorithme à une recette de cuisine, un mode d’emploi, une notice de montage, une partition musicale, un itinéraire routier.

4- Faire une analogie entre un algorithme et une recette de cuisine

Une recette de cuisine est une suite d’opérations simples permettant de passer des ingrédients à un plat préparé.

Recette = algorithme
Ingrédient = données
quantités = variables
opérations = instructions
cuisinier = opérateur / machine

5- Jeu de Nim

(voir explications dans document https://cloud.github.com/downloads/jcb/CSIRL/SMN_v1.0.pdf
issu du site : https://pixees.fr/?p=3159

On commence par découvrir les règles du jeu, puis la question de chercher à gagner se pose, et on découvre alors une solution répétitive qui fonctionne mécaniquement.
Objectif  : introduire la notion d’algorithme comme stratégie gagnante pour résoudre un problème
Règle du jeu  : deux joueurs ramassent tour à tour 1, 2 ou 3 allumettes sur une table. Celui qui prend la dernière à gagné. A travers ce jeu bien connu, nous introduisons la notion d’algorithme comme stratégie gagnante pour résoudre un problème

6- Exercice projeté sur TBI (ou vidéo-projecteur)

Une grille avec des cases noircies, écrire l’algorithme avec des flèches qui permet de se rendre de la case Départ vers Arrivée en passant par toutes les cases noircies.

Séance 2 : le codage binaire Mardi 8 septembre 2015

1- D’après le fichier cs_unplugged-fr.pdf page 11 à 14 "Activité 1
Compter les points – Écriture binaire des nombres"
(issu dehttps://interstices.info/jcms/c_47072/enseigner-et-apprendre-les-sciences-informatiques-a-lecole )

Comment les nombres, lettres, mots et images peuvent-ils être convertis en une série de 0 et de 1 ?

Apprentissage de l’écriture binaire des nombres, comment les ordinateurs affichent des images, comment fonctionnent les télécopieurs, quelle est la méthode la plus efficace pour stocker de grandes quantités de données, comment éviter les erreurs et comment mesurer la quantité d’informations que nous voulons stocker.

2- Exercices d’après le fichier defis_maths.pdf (198 défis (mathématiques) à manipuler ! issu de http://math.univ-lyon1.fr/irem/spip.php?article524 )

3- Trace écrite issue de la page 20 du fichier cs_unplugged-fr.pdf avec adaptation pour les élèves

Séance 3 : Un programme informatique Mardi 15 septembre 2015

1- Réaliser la séance de la page 110 à 113 du fichier cs_unplugged-fr.pdf page 110, activité 12 "Donner et exécuter des ordres – Langages de programmation"

3- Trace écrite : « ce qu’il faut retenir » page 114 du fichier ci-dessus - lecture, résumé par les élèves, écriture au tableau, copie sur leur cahier.

Séance 4 : Les bugs Mardi 22 septembre 2015

0- Les élèves dessinent un bug sur une feuille A5 (tout du moins, ce qu’ils en savent)

1- Demander ce qu’est un bug.

2- Se connecter à Internet et lire la définition de Wikipédia : https://fr.wikipedia.org/wiki/Bug_%28informatique%29

3- Donner des exemples de la vie courante de bugs qui ont perturbé des opérations/examens :
- explosion du vol Ariane5 le 4 juin 1996 https://fr.wikipedia.org/wiki/Vol_501_d%27Ariane₅

vidéo : https://www.youtube.com/watch?v=gp_D8r-2hwk

- Insolite : 500 élèves de médecine bloqués par un bug de l’iPad à Lille
http://www.mac4ever.com/actu/98533_insolite-500-eleves-de-medecine-bloques-par-un-bug-de-l-ipad-a-lille

- passage à l’an 2000 : demander aux élèves « A leur avis, pourquoi cela devait poser problème ? »

4- source (en partie pour ce qui suit)
http://images.math.cnrs.fr/Dis-papa-ou-maman-comment-arrivent.html

En fait, cela veut dire « insecte rampant », un truc qui tape sur les nerfs.

Historique du bug (lecture du document par des élèves) :
Le premier cas documenté de « bug informatique » (parfois « bogue » en français) concernait un papillon de nuit (mite) trouvé à 15 h 45 coincé dans le relais 70 du panneau F du Mark II Aiken Relay Calculator (autre dénomination du Harvard Mark II) alors qu’il était testé le 9 septembre 1947. Grace Hopper colla la mite dans le journal de laboratoire sous le titre « First actual case of bug being found » (« Premier cas avéré de bug ayant été trouvé [dans ce dispositif] »)1. Les opérateurs ré-utilisèrent le mot « bug » en disant qu’ils avaient « débuggé » la machine, introduisant ainsi le terme de « débuggage » (ou « débogage ») en informatique.

Les électriciens de la fin du XXe siècle utilisaient déjà le terme pour parler d’un dysfonctionnement.

Pour comprendre ce qui sous-tend ces « bugs » il faut se souvenir que tout ce qui est dans un ordinateur est affaire de codage : codage binaire au niveau de la machine, langage formel pour coder les instructions du programme, etc.

« Un ordinateur est bourré de circuits électroniques avec de microscopiques interrupteurs pour laisser passer ou pas le courant, ce qui donne des 0 ou des 1, selon que l’interrupteur est ouvert ou fermé.
Programmer en « langage machine », c’est spécifier une à une chaque ouverture ou fermeture des circuits électroniques de la machine. Les premiers ordinateurs n’étaient donc quasiment pas utilisables à grande échelle puisque programmés ainsi. Grace Murray Hopper fit sauter ce verrou et défendit l’idée qu’un programme doit pouvoir être écrit dans un langage formel proche de l’anglais. Elle conçut alors un compilateur, c’est-à-dire un logiciel qui traduit en langage machine les éléments de l’algorithme donné dans un langage compréhensible par tous les ingénieurs. »
S’il y a une erreur lors du codage de l’information ou des instructions à exécuter, comme la machine ne fait qu’exécuter le code, et ne connaît que le code, eh bien elle fera facilement n’importe quoi, avec ce code erroné.

5- Visionner la vidéo "Les sépas sur les bugs"
https://www.youtube.com/watch?v=deI0GV5sWTY
(intéressante car elle reparle du codage binaire)

Les séances 5 à 9 sont issues du site http://www.grafikart.fr/formations/apprendre-algorithmique avec adaptation pour des élèves de CM1-CM2

Séance 5 : Les variables Mardi 3 novembre 2015

Les variables : explications, exemples et exercices au tableau
Visualisation du début de la vidéo (
Ecriture de 2 lignes « résumé ».

Séance 6 : Lecture et écriture Mardi 10 novembre 2015

Les variables : revoir un exemple de la séance précédente
Lecture/écriture : avec flashcards au tableau + des exemples
Les tests : début des explications
(très difficile à comprendre pour certains élèves)

Séance 7 : Les tests Mardi 17 novembre 2015

Rappel de ce qui a été u et effectué lors de la précédente séance
Ecriture de la leçon sur lecture/ecriture
Les tests : Exemple du café avec simplification en conditions imbriquées

Séance 8 : Les conditions et les booléens (simples) Mardi 24 novembre 2015
Exemples, exercices
Leçon sur les conditions et les booléens

Séance 9 : Leçon sur les boucles TANTQUE et POUR Mardi 1er décembre 2015

Exemples et exercices sur les boucles
Leçon sur les boucles au tableau, copie sur le cahier)