# data[].attributes.headline
Des enseignants qui proposent des activités clé en main

# data[].attributes.subject
Des enseignants qui proposent des activités clé en main

# data[].attributes.body
http://helene.pelle.free.fr/accueil/accueil.php

https://sites.google.com/site/mathsasius/activite-algorithmique/activites-scratch

# data[].attributes.headline
Lien pour s'inscrire à un parcours en auto-formation à l'algorithmique et à Scratch via la plateforme M@gistère ou via la page d'accueil du site académique mathématique, rubrique "à la une" (colonne de gauche)

# data[].attributes.subject
Lien pour s'inscrire à un parcours en auto-formation à l'algorithmique et à Scratch via la plateforme M@gistère ou via la page d'accueil du site académique mathématique, rubrique "à la une" (colonne de gauche)

# data[].attributes.body
Ce lien a été envoyé par les Inspecteurs de Mathématiques de l'Académie de paris en date du 24 mai dans les boîtes mail académiques.
Le lien :
https://www.ac-paris.fr/portail/jcms/p2_1351937/parcours-algorithmique-et-programmation?cid=p2_1351924

# data[].attributes.headline
Liens pour l'initiation à Scratch et pour des activités

# data[].attributes.subject
Liens pour l'initiation à Scratch et pour des activités

# data[].attributes.headline
Algorithmique et Evaluation (site maths académie de Paris)

# data[].attributes.subject
Algorithmique et Evaluation (site maths académie de Paris)

# data[].attributes.attachment_link.readable_text
Les documents d'accompagnement concernant l'introduction de l'enseignement de l'algorithmique et de la programmation en mathématiques au collège sont exclusivement consacrés au logiciel Scratch. Se pose la question de l'évaluation en classe et au brevet. Des exercices d'évaluation sur papier inspirés de ce qui a pu être fait au lycée sont proposés ci-dessous. Quelques indications sont également données pour l'évaluation dans le cadre des projets qui doivent être proposés aux élèves. Les fichiers joints contiennent les énoncés au format odt et pdf ainsi qu'un fichier zip contenant les programmes Scratch qui ont été rédigés pour fabriquer ces exercices.

Les exercices proposés ici permettent d'évaluer des compétences en algorithmique. Au collège, contrairement au lycée, même s'il n'est pas imposé, le logiciel Scratch est fortement conseillé. Afin de rendre plus clair les exercices pour les élèves, les algorithmes seront formulés en langage Scratch, j'utiliserai donc le mot programme dans les énoncés. Bien entendu, des exercices analogues pourraient être proposés en pseudo-code voire dans un autre langage. Les questions sur les points d'algorithmiques comme le fonctionnement des boucles ou des branchements conditionnels existent indépendamment du langage dans lequel l'algorithme est exprimé. Dans la suite de cet article, j'utiliserai donc algorithme/programme puisque les questions d'algorithmiques sont proposées en langage Scratch.
Que doit-on évaluer en algorithmique et programmation?
Plusieurs compétences en algorithmique/programmation se dégagent :

Savoir lire un algorithme/programme ;

Savoir exécuter un algorithme/programme ;

Comprendre un algorithme/programme ;

Savoir écrire / compléter un algorithme/programme ;

Savoir corriger un algorithme/programme.

Et pour la partie projets de programmation :

Concevoir, organiser, écrire un programme et le commenter

Mener un projet.

Travailler en groupe

Comment évaluer les compétences en algorithmique/programmation sur papier?

1. Savoir lire un algorithme/programme :

Cette compétence suppose de savoir reconnaître un algorithme. Par exemple, une recette de cuisine n'en est pas un car elle contient des implicites, des instructions ambigües (pincée de sel, four doux)...Et résultat n'est pas garanti !

L'algorithme doit être reconnu quelle que soit sa forme :

J'ajoute 1 au résultat précédent.

Je continue ainsi jusqu'à ce que j'ajoute 20.

J'annonce le dernier résultat obtenu.

pour k allant de 1 à 20 faire

En langage de programmation :

2. Savoir exécuter un algorithme/programme :

Pour déterminer si un élève sait exécuter un algorithme/programme on peut poser des questions du type :

Que fait le programme si l'utilisateur répond 3 ?

Que fait le programme si l'utilisateur répond -5 ?

3. Comprendre un algorithme/programme :

Pour s'assurer qu'un élève a compris le fonctionnement du programme précédent il faut absolument éviter les questions du type " Que fait ce programme ?". Ce genre de question, trop ouverte, conduit à de nombreuses réponses différentes (même chez les enseignants) et ceci rend l'évaluation très difficile car l'attendu manque de précision.

On préférera des questions du genre :
Parmi les affirmations suivantes, laquelle vous semble vraie à la fin de ce programme, pour n'importe quel nombre saisi par l'utilisateur ?
a) Le lutin dit un nombre qui a la même valeur que le nombre saisi.

b) Le lutin dit un nombre qui a la même valeur que l'opposé du nombre saisi.

c) Le lutin dit un nombre qui a la même valeur que la distance à zéro du nombre saisi.

d) Le lutin dit un nombre qui a la même valeur que l'inverse du nombre saisi.

Autre exemple, sur un autre thème :

Voici un programme contenant un lutin "Balle" à 5 costumes correspondant à 5 couleurs différentes.

Que se passe-t-il sur la scène quand on lance ce programme?

Enfin, on peut proposer le programme suivant :

puis poser une des deux questions suivantes :

Que trace le lutin quand on lance ce programme?

Laquelle des quatre figures ci-dessous trace le lutin quand on lance le programme précédant ?

4. Comprendre un algorithme/programme : correction. Pourquoi un algorithme/programme fonctionne ou pas ?

Il est intéressant de déterminer si les élèves sont capable de détecter si un algorithme/programme va fonctionner ou pas. Par exemple on peut proposer l'exercice suivant :

Choisir le ou les programmes permettant de construire la figure ci-dessous. Vous expliquerez pour chaque programme qui ne fonctionne pas ce qui pose problème.

5. Savoir compléter un algorithme/programme :

On peut également vouloir déterminer si les élèves ont une bonne compréhension des boucles et de l'initialisation des variables. Pour cela il peut être intéressant de leur faire compléter un algorithme/programme.

Compléter le programme ci-dessous pour qu'il fasse la même chose que le programme 1 :

6. Savoir corriger un algorithme/programme :

Les élèves doivent aussi être capable de détecter et de corriger des erreurs dans un algorithme/programme. On peut proposer l'exercice suivant :

# data[].attributes.attachment_link.description
upload/docs/image/jpeg/2016-04/nb_oppose.jpg Dans la réforme du collège, l'enseignement de l'algorithmique et de la programmation a fait son apparition dans les programmes de Mathématiques. De façon naturelle se pose la question de l'évaluation. Que doit-on évaluer ? Comment l'évaluer ? Comment rendre cette évaluation constructive pour l'élève ?

# data[].attributes.attachment_link.title
Learn computer science. Change the world.

# data[].attributes.attachment_link.description
Every student in every school deserves the opportunity to study computer science.

# data[].attributes.attachment_link.description
Games for tomorrow's programmers. Block-based programming lessons for beginners. Free from Google.

# data[].attributes.attachment_link.description
Scratch is a free programming language and online community where you can create your own interactive stories, games, and animations.