Contenu

mathématiques

Recherche simple Vous recherchez ...

espace pédagogique > disciplines du second degré > mathématiques > enseignement > actions nationales > actions nationales 2017-2018

de scratch vers python

mis à jour le 05/07/2018


logo_scratch_python.png

Utiliser les connaissances sur Scratch des élèves pour une transition en douceur vers Python.

mots clés : scratch, collège vers python



Objectifs

  • Partir des connaissances des élèves sous scratch.
  • Repérer les instructions communes ou différentes sous scratch et sous python.
  • Recopier un programme sous python – présentation d’un langage textuel.
  • Modifier un programme sous python.

Mise en œuvre


Le travail est effectué en 1/2 groupe au niveau seconde dans une salle équipée d’ordinateurs. Cette séance, prévue sur une heure, a dû être prolongée afin que chaque élève puisse prendre contact avec le langage python. Chaque élève a un ordinateur à disposition. Le choix est fait d’utiliser « edupython ».

Temps n°1 : vérification de la lecture d’un programme scratch


                      On distribue le programme sous scratch tel qu’il a été proposé aux élèves lors de le session 2017 au DNB.

Dans un premier temps, cela permet de vérifier ceux qui sont plutôt « à l’aise » avec les instructions sous scratch et qui peuvent passer rapidement à un autre langage, de ceux qui éprouvent des difficultés à lire un programme.

Pour les plus rapides : distribution du même algorithme écrit avec le langage python. (voir le 2ème temps).

Pour les plus lents : on reprend l’algorithme écrit sous scratch par groupe en faisant jouer les élèves au « robot idiot » à partir des instructions proposées. La lecture à voix haute des instructions par un élève et le fait qu’un autre ( guidé par le reste du groupe et le professeur ) trace ce qui est demandé, aide à réactiver les connaissances.

Nouvelle différenciation entre ceux qui se sentent capables de passer sous python, de ceux qui ont encore besoin d’un temps de confirmation : proposition de la même activité mais cette fois avec le tracé de carrés.

Temps n°2 : écriture du programme avec le langage python


                               Distribution du même algorithme codé avec le langage python (sans les commentaires).

  La « rentrée » dans ce temps se fait au fur et à mesure que les élèves ont montré qu’ils comprenaient le programme sous scratch. L’objectif est de commencer à voir les points communs et les différences entre les 2 langages.
 
Tous les élèves à la fin de la séance ont commencé à taper sous python. Certains élèves ont commencé à modifier le programme et à faire tracer des carrés, des pentagones, modifier la longueur du côté, ou encore fait « tourner » le triangle comme proposé à la fin de l’exercice du brevet.

Bilan


La découverte d’un nouveau langage est effectuée. Les élèves ont relevé les points communs avec scratch et ont compris que des instructions équivalentes pouvaient être données sous python. La notion de variable informatique a aussi été (ré)abordée (ici la variable côté).

Les programmes proposés aux élèves n’étant pas commentés, les élèves ont également relevé les différences avec scratch : par exemple quel est le rôle de cette première ligne from turtle import *. A ce stade, il n’a pas été question de parler de la fonction informatique introduite par def  sous python.

Distribution d’une première feuille bilan avec toutes les instructions de base pour python. Chaque instruction sera expliquée et mise en œuvre dans les séances suivantes. Cette feuille servira par la suite à ce que certains élèves suivent leur propre rythme dans l’élaboration des programmes. A la fin de la séance si presque tous les élèves ont modifié au moins une fois le programme de base, très peu sont capables de bien comprendre ce qu’ils ont réellement faits. Par la suite, ils éprouveront aussi des difficultés à utiliser la feuille bilan et à se détacher des exemples proposés. Il faudra beaucoup de temps pour que les élèves codent correctement un problème « simple » sous python.

Et après


Les séances suivantes seront consacrés à l’écriture de petit problème sous python avec différents objectifs :
  • Instruction conditionnelle ;
  • Boucles bornées ;
  • Boucles non bornées ;
  • Découverte des bibliothèques turtle – random – pylab.


Des exemples « classiques » d’algorithmes sont proposés.

 
auteur(s) :

Fabrice Foucher, enseignant au lycée Jacques Prévet de Savenay (44)

information(s) pédagogique(s)

niveau : tous niveaux, Lycée tous niveaux, 2nde

type pédagogique :

public visé : non précisé, enseignant, inspecteur

contexte d'usage :

référence aux programmes :

documents complémentaires

Les fichiers
PDFLe document élève
PDFLes instructions Python
PDFLes exercices "classiques"

Le script python de l'exercice du brevet

haut de page

mathématiques - Rectorat de l'Académie de Nantes