-
Notifications
You must be signed in to change notification settings - Fork 0
Demo 2018 W27
Erik Martin-Dorel edited this page Jul 10, 2018
·
3 revisions
Link to this page: https://git.io/fSG3j
- Se connecter à l'URL https://pfitaxel.github.io/pfitaxel-demo-dev/
- Cliquer sur Éditeur
- Créer un nouvel exercice
- Choisir les méta-données ("demo_tp", "Démo TP", "Démonstration...") et Valider le formulaire
- Remplir l'onglet Question (à droite) avec le texte de l'exercice de TP (en Markdown)
- Vous pouvez copier-coller l'exemple de l'Annexe 1
- Remplir l'onglet Solution (à gauche) avec une correction complète (et correcte)
- Aller sur l'onglet Toplevel (à droite), cliquer sur Évaluer le code (en bas) et faire quelques tests
- Aller sur l'onglet Test (à droite) et cliquer sur Générer (en bas) pour générer 1 test par question (ou 2 tests en cas de fonction polymorphe)
- Cliquer sur chaque bandeau de test généré et (après avoir sélectionné le bouton radio Solution) spécifier le type + une liste de cas de tests
- Cliquer sur Compile (en bas)
- L'onglet Test.ml doit maintenant s'afficher en montrant le code OCaml généré à partir de votre spécification de tests
- Cliquer sur le bouton Noter! (en haut)
- Le résultat de la correction-test devrait s'afficher dans l'onglet Rapport
- Cliquer sur le bouton Créer le patron (en bas) pour générer un squelette de code
- L'onglet Patron (à droite) doit maintenant s'afficher avec le squelette de code généré
- Vous pouvez le modifier et vérifier qu'il "type-check" en cliquant sur Valider
- Remplir légèrement l'onglet Prélude (à droite) avec une définition globale de variable (montrée à l'étudiant)
- Cliquer sur le bouton Tester situé en haut
- On voit alors l'énoncé de l'exercice avec une mise en forme riche
- La réponse de l'étudiant doit être faite à gauche
- Un buffer Toplevel est disponible pour faire des tests, regarder le type de fonctions, etc.
- Cliquer sur Valider (vérification de syntaxe et de typage)
- Cliquer sur Noter!
- Le résultat de la correction devrait s'afficher dans l'onglet Rapport
- Revenir à la vue enseignant en cliquant sur Éditer (en haut)
- Choisir une spécification de fonction (prenant en argument 1 ou 2 listes par exemple)
- Compléter les 3 fichiers nécessaires (Question, Solution et Test ou Test.ml)
- Tester le sujet
# Démo TP
## Question 1.
Écrivez la fonction suivante :
xor : bool -> bool -> bool
correspondant au **OU EXCLUSIF**.
*Remarque :* Vous pouvez fournir une fonction ayant un profil plus général.
## Question 2.
Écrivez la fonction suivante :
power : int -> int -> int
correspondant à l'exponentiation.
*Remarque :* `power m n` lèvera une exception (`failwith`) si `n < 0`.