Un projet pour approfondir l’apprentissage de la programmation en L1: atelier Prog&Play E. Delozanne, P. Jarraud, M. Muratet 1.

Slides:



Advertisements
Présentations similaires
Tris.
Advertisements

Initiation à la programmation et algorithmique cours 2
L’algorithmique, les séquences.
Algorithmique et Programmation
Sensibilisation à l’Algorithmique
Introduction à l’Algorithmique
Sensibilisation à l’Algorithmique et structure de données
EXAMEN ET GESTION DE PROJET INDUSTRIEL
Algorithmique.
Algorithmique et évaluation
La logique algorithmique
LA LOGIQUE ALGORITHMIQUE. Algorithme Définition Ensemble dopérations Effectuées dans un ordre logique Afin dobtenir un résultat, Afin de résoudre un problème.
Algorithmique Résume.
DE NOUVELLES RESSOURCES POUR LENSEIGNEMENT ET LA FORMATION : ENSEIGNER ET FORMER AUTREMENT André Paradis Vice-recteur aux services académiques et aux technologies.
Introduction Pour concrétiser l’enseignement assisté par ordinateur
Problème de 8 dames: Sachant que dans un jeu des échecs, une dame peut pendre toute pièce se trouvant sur la colonne ou sur la ligne ou sur les diagonales.
5. La physique appliquée en STS IPM
Construction d’une séquence pédagogique
L’étude de gestion en 1ère STMG
MANAGEMENT DES ORGANISATIONS
1 Programme de la journée Échange sur les programmes de 1 ère et de Terminale Les épreuves écrites et orales Conception de sujets doral.
Laccompagnement personnalisé en seconde Documents de référence BO spécial du 04 février 2010 Ressources du site EDUSCOL Rapport n° Février 2011.
Document ressource. Le programme de mathématiques et le socle Le présent document dapplication a pour ambition de montrer, à la fois par des indications.
4. Les structures de tests
Forum Des Professeurs Agrégés Du Maroc
Section VI Structures répétitives (suite)
Qu’est-ce qu’un ordinateur ?
Devoirs maison et TICE.
Les bases de l’Algorithmique
Points importants de la semaine Les commentaires. Les variables. Les instructions conditionnelles. Les instructions itératives (les boucles).
Titre C2i Dispositif de Certification & Ingénierie de FAD Rachid El Boussarghini 2010 SDTICE.
Caravane de lEstrie Les jeudi et vendredi 31 mai et 1er juin 2007.
1. Introduction: Vous avez dit MMORTS ? contexte de notre TER 2. Survol du projet: Les différentes composantes du projet Le jeu Organisation du travail.
Section XI Traitement de fichiers
ARGE Fachdidaktik Französisch 3
Jeu dOthello Projet dAlgorithmique et Programmation.
Approche par les problèmes en TS spécialité maths
LOGICIEL PL7 MICRO PROGRAMMATION MISE AU POINT Consignes?
Algorithmique et Programmation
1. Introduction: Vous avez dit MMORTS ? contexte de notre TER 2. Survol du projet: Les différentes composantes du projet Le jeu Organisation du travail.
E. Delozanne, P. Jarraud, M. Muratet
FICHIERS : Définition : Algorithme général:
Efficacité des algorithmes
La formation des apprentis
Des épreuves pratiques aux TP Des exemples en probabilités
L’essentiel du langage C
Programmation procédurale Les différents schémas
Un survol du language C.
Choix du parcours en informatique Plutôt PLUS ? ou plutôt MOINS ? Denis BUREAU Coordinateur des enseignements d’informatique E1/E2/E3.
Module I3 algorithmique et programmation
Structures de contrôle
LES DEMARCHES PEDAGOGIQUES
Orientation et langage Bellegarde sur Valserine
2008/ Plan du cours 1.Introduction –Contenu du cours 2.Logique mathématique –Calcul propositionnel –Calcul des prédicats –Logique floue et aide à.
La situation-problème
2005/2006 Structures de Données Introduction à la complexité des algorithmes.
Mémoire – Aline Schneider Intérêts –Enseignement primaire –Usage de l’ordinateur pour développer de nouvelles connaissances –Mathématiques / géométrie.
Module algorithmique et programmation
Le contexte La mission Les ressources
Préambule Problématique générale.
BACCALAUREAT PROFESSIONNEL 3 ANS MICROTECHNIQUES Quelques points clés.
La littératie avec les TIC dans tous les programmes d’étude Continuum de développement.
République Algérienne Démocratique et Populaire
Algorithmique Boucles et Itérations
La différenciation pédagogique
Algorithmique et programmation
Introduction à l’Informatique chap 3 Licence SPI Mme Delmotte.
BASE DE L’ALGORITHMIE.  Un système d’instructions.  Pour résoudre d’un problème ou d’une classe de problèmes  Recette de cuisine pour faire un gâteau.
INFORMATIQUE et SCIENCES du NUMERIQUE Lycée FRANCOISE Tournefeuille 7 décembre 2015.
PÔLE TICE / SEMAINE DES TICE ATELIER SCÉNARISER SON COURS Illustration : Maxx-Studio, Shutterstock.comMaxx-Studio, Shutterstock.com.
Transcription de la présentation:

Un projet pour approfondir l’apprentissage de la programmation en L1: atelier Prog&Play E. Delozanne, P. Jarraud, M. Muratet 1

Le projet : Prog&Play Logiciel développé par Mathieu Muratet (IRIT) – Objectif – Motiver les étudiants pour la programmation Principe – Jeu de stratégie temps réel (STR) – Contrôler les unités par la programmation pour être meilleur que ses adversaires – Langages disponibles : C, C++, Java, Ada, Ocaml, Scratch, algorithmique 2

Principe des jeux STR Gérer des ressources Construire des unités Définir des objectifs – Éliminer les unités de l’adversaire – Résister aux assauts – Atteindre une position Définir et mettre en œuvre des stratégies 3

Le jeu P&P Mission Défis de programmation Scénarios de jeu Jeu Contre l’ordinateur Multijoueur 4

Génération des unités kernel bit octet assembleur pointeur socket terminal 5

Étudiants : 4 Objectifs de l’UE TICE : apprendre en jouant Est-ce qu’on apprend en jouant sur un ordinateur et quoi ? Programmation : apprendre sur un projet Mettre en œuvre les concepts de base de la programmation sur une application d’une certaine importance Jeu de stratégie Programmer en utilisant une bibliothèque de fonctions Communication : préparer une soutenance Exposer le résultat du projet en s’appuyant sur un diaporama Rédiger un rapport d’activité C2i : valider les épreuves pratiques 6

Enseignants : objectifs de l’UE Pédagogie de projet – Résoudre un problème ouvert et plus conséquent que les problèmes de TD-TP sur un sujet a priori motivant de façon assez autonome Produire une solution complète Approfondir les connaissances en algorithmique et en C – Décomposer un problème en sous-problèmes – Utiliser une bibliothèque de fonctions à partir d’un fichier d’en-tête et des commentaires 7

Chercheur : objectif Étudier en quoi programmer un jeu pouvait intéresser l’enseignement de la programmation en L1 ? Pour quels types d’étudiants ? Comment adapter Porg&Play à notre contexte ? 8

Organisation de l’atelier DateContenuLivrables 16 mars Présentation et installation du jeu Familiarisation avec le jeu Missions en langage algorithmique Questionnaire pré-expérimental 23 mars Compléments de C, Structures de données Programmation des premières missions 23 mars- 6 avril, En binôme : Développement des missions suivantes, rédaction du rapport 6 avril Point sur le projet, problèmes et solutions Programme des 6 premières missions 27 avril Test des programmes en jouant en réseauProgramme de la mission 7 4 mai Soutenance orale (15 min)Rapport Diaporama Questionnaire post-expérimental 9

Programmer les missions 1.Déplacer une unité à un endroit donné (séquence) 2.Déplacer une unité dans une direction donnée (séquence) 3.Regrouper des unités de même nature (alternative) 4.Déplacer un groupe d’unités (répétition) 5.Chercher l’assembleur et le déplacer (répétition et alternative) 6.Recharger toutes les unités endommagées (répétitions imbriquées) 7.Regrouper les unités et lancer l’attaque (problème ouvert, utilisation d’une bibliothèque) 10

Remplir une mission Éditez un programme en langage Algorithmique (pour comprendre) puis en C Sauvegarder le programme dans le répertoire C_Algo_Interface (resp. C_Interface) Compiler Construire Lancer la mission Exécuter le programme 11

Un mini-langage algorithmique Programme principal : Debut Fin Structure de contrôle conditionnelle : Si Alors FinSi Si Alors Sinon FinSi Structure de contrôle itérative : TantQue Faire FinTantQue Opérateurs de comparaison : ==,, =, != Opérateurs booléen: Et, Ou, Non Constantes : VRAI, FAUX 12

Mission 4 (1/3) Debut /* Déplacer toutes les unités vers l’assembleur */ OUVRIR_JEU ; TantQue la dernière unité n’est pas atteinte Faire Déplacer l’unité courante vers l’assembleur ; FinTantQue FERMER_JEU ; Fin

Mission 4 (2/3) Debut /* Déplacer toutes les unités vers l’assembleur */ OUVRIR_JEU ; /* Parcourir toutes les unités */ PREMIERE_UNITE ; TantQue current_unit != DERNIERE_UNITE Faire /* Déplacer l’unité courante vers l’assembleur */ DEPLACER_VERS(256, 1024) ; UNITE_SUIVANTE ; FinTantQue /* Déplacer la dernière unité */ DEPLACER_VERS(256, 1024) ; FERMER_JEU ; Fin

Mission 4 (3/3) int i; // compteur de boucle PP_Unit u; // unité courante PP_Pos pos; // définition de la cible pos.x = 256.0; pos.y = ; PP_Open(); // ouverture du jeu PP_Refresh();// récupérer l'état courant du jeu i = 0; // parcourir toutes les unités while (i < PP_GetNumUnits(ME)){ u = PP_GetUnitAt(ME, i); // récupérer l'unité courante PP_Unit_ActionOnPosition(u, MOVE, pos); // ordre de déplacement i++; } PP_Close(); // fermer le jeu 15

Conclusion Expérience intéressante car les étudiants – s’impliquent – questionnent sur « le vrai C » – sont obligés de s’appuyer uniquement sur des commentaires pour trouver dans une bibliothèque les fonctions qu’ils cherchent – mettent en œuvre des stratégies diversifiées Guerre éclair, arme fatale, diversion Pas d’effet marquant sur la réussite à l’examen de C Sur l’orientation des étudiants ? 16