diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 5ca424eb6249db943b4fc18b0d90d6b08b808a18..2e5ca0830e971fa8ad4b3f19eb3f9b2fca980fd1 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -2,10 +2,11 @@ image: gitlab.dsi.universite-paris-saclay.fr:5005/info111/computerlab/image:late variables: ASSIGNMENT: Semaine1 - STUDENT: $CI_PROJECT_NAMESPACE # CI_PROJECT_ROOT_NAMESPACE is GitLab 13.2 only + STUDENT: $CI_PROJECT_ROOT_NAMESPACE autograde: script: + - STUDENT=`echo $STUDENT | sed -e 's/_travo//;s/_/./'` - info-111 student_autograde $ASSIGNMENT $STUDENT artifacts: paths: diff --git a/.gradebook.db b/.gradebook.db index 08aa612949bcca9cb31118394e14f8bfdd6d3f0d..e551af62008ae036385296e36efc90e77e7c50e5 100644 Binary files a/.gradebook.db and b/.gradebook.db differ diff --git a/TD.md b/TD.md index 8a3b634f0c2e4c5391251cc6ba833c749cb5e6ec..c74f692ee0fea269c8fbc57a527823c4c31107b9 100644 --- a/TD.md +++ b/TD.md @@ -24,7 +24,7 @@ semaine sur l'autre.** ::: -+++ {"deletable": false, "nbgrader": {"cell_type": "markdown", "checksum": "8ad448955b1ba80fb9a1ef1e85ca2fa2", "grade": true, "grade_id": "1", "locked": false, "points": 0, "schema_version": 3, "solution": true}} ++++ {"deletable": false, "nbgrader": {"cell_type": "markdown", "checksum": "9cea354d1a408c25828d0da0331786be", "grade": true, "grade_id": "1", "locked": false, "points": 0, "schema_version": 3, "solution": true}} :::{admonition} Exercice : Modélisation d'un problème et notion d'algorithme @@ -43,12 +43,12 @@ se retrouvait seule en présence du chou. - `décharge(objet)` - `traverse()` - **Indication :** Ne cherchez pas à résoudre le problème de tête; - au contraire, l'objectif est d'apprendre à raisonner sur papier - pour aborder ensuite des problèmes plus complexes et pouvoir - transmettre ce raisonnement. Cherchez une manière de représenter - l'état du système, et décrivez sur votre feuille comment celui-ci - évolue au fur et à mesure des instructions. + **Indication :** Ne cherchez pas à résoudre le problème de tête; + au contraire, l'objectif est d'apprendre à raisonner sur papier + pour aborder ensuite des problèmes plus complexes et pouvoir + transmettre ce raisonnement. Cherchez une manière de représenter + l'état du système, et décrivez sur votre feuille comment celui-ci + évolue au fur et à mesure des instructions. % REMPLACER CETTE LIGNE PAR VOTRE RÉPONSE @@ -61,7 +61,7 @@ se retrouvait seule en présence du chou. ::: -+++ {"deletable": false, "nbgrader": {"cell_type": "markdown", "checksum": "9d1d93a1ea55a97a541a509d31763bf9", "grade": true, "grade_id": "2", "locked": false, "points": 0, "schema_version": 3, "solution": true}} ++++ {"deletable": false, "nbgrader": {"cell_type": "markdown", "checksum": "00355dc3ecafb358340cc9518fb7db19", "grade": true, "grade_id": "2", "locked": false, "points": 0, "schema_version": 3, "solution": true}} ::::{admonition} Exercice : Modélisation d'un problème et notion d'algorithme @@ -75,16 +75,16 @@ cruches. d'instructions, puis donnez une suite d'instructions permettant d'atteindre une solution. - **Indication :** Comme dans l'exercice précédent, ne cherchez pas + **Indication :** Comme dans l'exercice précédent, ne cherchez pas à résoudre le problème de tête. - % REMPLACER CETTE LIGNE PAR VOTRE RÉPONSE + % REMPLACER CETTE LIGNE PAR VOTRE RÉPONSE 2. Peut-on trouver une suite d'instructions de façon que l'une des deux cruches contienne 1 litre? 2 litres? 3 litres? 4 litres? 5 litres? 6 litres? 7 litres? - % REMPLACER CETTE LIGNE PAR VOTRE RÉPONSE + % REMPLACER CETTE LIGNE PAR VOTRE RÉPONSE :::: @@ -107,7 +107,7 @@ pour poser les opérations (pas de calculatrice). ::: -+++ {"deletable": false, "nbgrader": {"cell_type": "markdown", "checksum": "9486416dcdc7b441f9f31d1461cd1d0c", "grade": true, "grade_id": "4", "locked": false, "points": 0, "schema_version": 3, "solution": true}} ++++ {"deletable": false, "nbgrader": {"cell_type": "markdown", "checksum": "c2cc90b7c3c445e44612a86f1d3e1b6e", "grade": true, "grade_id": "4", "locked": false, "points": 0, "schema_version": 3, "solution": true}} <s></s> @@ -136,7 +136,7 @@ Voici un exemple d'algorithme pour le robot : 2. Décrivez un algorithme qui permet au robot de donner l'âge exact de l'utilisateur. - % REMPLACER CETTE LIGNE PAR VOTRE RÉPONSE + % REMPLACER CETTE LIGNE PAR VOTRE RÉPONSE 3. Quelles difficultés avez-vous rencontrées pour écrire les algorithmes? @@ -145,7 +145,7 @@ Voici un exemple d'algorithme pour le robot : ::: -+++ {"deletable": false, "nbgrader": {"cell_type": "markdown", "checksum": "05c0255d5284a46ad7d60ba1604593f4", "grade": true, "grade_id": "5", "locked": false, "points": 0, "schema_version": 3, "solution": true}} ++++ {"deletable": false, "nbgrader": {"cell_type": "markdown", "checksum": "63dbdfec0b0ae715c1378fe11451e3d0", "grade": true, "grade_id": "5", "locked": false, "points": 0, "schema_version": 3, "solution": true}} :::{admonition} Exercice : $\clubsuit$ Un peu de logique et de booléens @@ -155,29 +155,29 @@ Voici un exemple d'algorithme pour le robot : - `op1(a, b): (a ET (NON b)) OU ((NON a) ET b)` - `op2(a, b): (a OU b) ET ((NON a) OU (NON b))`. - % REMPLACER CETTE LIGNE PAR VOTRE RÉPONSE + % REMPLACER CETTE LIGNE PAR VOTRE RÉPONSE 2. Que constatez-vous? - % REMPLACER CETTE LIGNE PAR VOTRE RÉPONSE + % REMPLACER CETTE LIGNE PAR VOTRE RÉPONSE 3. `op1(a, b)` est en fait une opération très courante en informatique; elle a même un nom. Savez-vous comment on l'appelle? - % REMPLACER CETTE LIGNE PAR VOTRE RÉPONSE + % REMPLACER CETTE LIGNE PAR VOTRE RÉPONSE 4. Écrivez une opération `op3(a, b)` dont le résultat est vrai si et seulement si le résultat de `op1(a, b)` est faux. Utiliser au plus 5 mots `OU`, `NON` et `ET` dans l'écriture de `op3(a, b)`. - % REMPLACER CETTE LIGNE PAR VOTRE RÉPONSE + % REMPLACER CETTE LIGNE PAR VOTRE RÉPONSE 5. Expliquez pourquoi cette opération permet de déterminer si deux mots booléens sont identiques. ::: -+++ {"deletable": false, "nbgrader": {"cell_type": "markdown", "checksum": "9c87fcfc225cd97c8857be3473d92d8b", "grade": true, "grade_id": "6", "locked": false, "points": 0, "schema_version": 3, "solution": true}} ++++ {"deletable": false, "nbgrader": {"cell_type": "markdown", "checksum": "52f1d2f3511b7bce76589f0e9c606bcf", "grade": true, "grade_id": "6", "locked": false, "points": 0, "schema_version": 3, "solution": true}} :::{admonition} Exercice : $\clubsuit$ Notion de test de programme @@ -189,13 +189,13 @@ voulez tester si les résultats de ce programme sont cohérents. 1. Spécifiez le programme sans écrire l'algorithme : que va-t-il prendre en entrée? renvoyer en sortie? - % REMPLACER CETTE LIGNE PAR VOTRE RÉPONSE + % REMPLACER CETTE LIGNE PAR VOTRE RÉPONSE 2. Donnez une série de tests dont vous connaissez le résultat sans calculs: situations extrêmes (par ex : tirer verticalement), symétries, ... - % REMPLACER CETTE LIGNE PAR VOTRE RÉPONSE + % REMPLACER CETTE LIGNE PAR VOTRE RÉPONSE :::