Forums » Utilisation d'AMC (french) »
reprendre un résultat dans la question suivante
Added by DENIS Sébastien almost 5 years ago
Est-ce possible?
Sinon y a t il y moyen de contourner?
Replies (27)
RE: reprendre un résultat dans la question suivante - Added by Alexis Bienvenüe almost 5 years ago
Pouvez-vous donner un exemple concret de ce que vous voulez faire ?
RE: reprendre un résultat dans la question suivante - Added by DENIS Sébastien almost 5 years ago
Bonjour
en fait je désire (avec des question numériques) par exemple:
Q1: faire calculer une surface
Q2: reprendre la valeur de la surface de la question Q1 afin de faire calculer un volume en Q2
RE: reprendre un résultat dans la question suivante - Added by Frédéric Bréal almost 5 years ago
the holly graal
Nous sommes plusieurs à chercher https://project.auto-multiple-choice.net/boards/4/topics/4013?r=8342#message-8342
Pour l'instant, j'ai mis ça de côté.
RE: reprendre un résultat dans la question suivante - Added by Alexis Bienvenüe over 4 years ago
On avance sur cette quête grâce à la dernière version de développement d'AMC : voir fichiers ci-joints.the holly graal
Par exemple, dans les questions sur la surface du disque et volume du cône, l'étudiant a tous les points à la deuxième question si la valeur entrée est la bonne, OU si la valeur entrée est 5/3 fois celle entrée pour la surface du disque. La copie annotée montrera quand même ce qu'il fallait cocher, mais les points sont donnés.
Attention :
- les questions sont notées dans l'ordre des identifiants de questions : il faut donc mettre un identifiant plus petit (ordre lexicographique) pour la première question que pour la deuxième question liée à la première
- la formule que l'on entre avec l'option
alsocorrect
est à écrire en perl : par exemple la puissance est notée**
simple.tex - Fichier source (2.9 kB)
DOC-sujet.pdf - Sujet (161.4 kB)
RE: reprendre un résultat dans la question suivante - Added by Frédéric Bréal over 4 years ago
Merci.
Je ferai la documentation après mes tests et la recherche du code perl.
RE: reprendre un résultat dans la question suivante - Added by Frédéric Bréal over 4 years ago
\begin{question}{carre-a} \QuestionIndicative Choisissez le nombre que vous voulez \begin{reponseshoriz}[o] \mauvaise{2}\scoring{2,setglobal.Nombre=2} \mauvaise{3}\scoring{3,setglobal.Nombre=3} \mauvaise{4}\scoring{4,setglobal.Nombre=4} \mauvaise{5}\scoring{5,setglobal.Nombre=5} \end{reponseshoriz} \end{question}
Dans cet exemple, les chiffres 2 à 5 dans scoring avant setglobal sont-ils obligatoires ?
RE: reprendre un résultat dans la question suivante - Added by Alexis Bienvenüe over 4 years ago
Non mais cela permet de récupérer l'information si on veut.
RE: reprendre un résultat dans la question suivante - Added by Liouba Leroux over 4 years ago
Bonjour,
c'est très prometteur et alléchant !
Merci !
RE: reprendre un résultat dans la question suivante - Added by Nikos Chacal about 4 years ago
Bonjour,
J'ai essayé cette méthode mais j'obtiens le message d'erreur suivant:
'amcnumeric/alsocorrect' is unknown and is being ignored
Une idée d'où provient le problème?
Merci.
RE: reprendre un résultat dans la question suivante - Added by Alexis Bienvenüe about 4 years ago
'amcnumeric/alsocorrect' is unknown and is being ignored
Peut-être utilisez-vous une version trop ancienne d'AMC ?
RE: reprendre un résultat dans la question suivante - Added by Nikos Chacal about 4 years ago
J'ai la dernière version stable 1.4.0 d'AMC. Je ne sais pas à partir de quelle version ça marche.
Mais surtout l'erreur de compilation apparaît dans texlive. Est-il possible que cette erreur disparaisse quand je suis dans AMC?
RE: reprendre un résultat dans la question suivante - Added by Alexis Bienvenüe about 4 years ago
J'ai la dernière version stable 1.4.0 d'AMC. Je ne sais pas à partir de quelle version ça marche.
Je pense qu'il faut utiliser la version de développement.
Est-il possible que cette erreur disparaisse quand je suis dans AMC?
Normalement non.
RE: reprendre un résultat dans la question suivante - Added by Frédéric Bréal about 4 years ago
Est-il possible de reprendre le résultat de l'élève pour une question simple ?
Pour la 3e question (disjoncteur), est-ce que dans le test \ifthenelse
, je peux mettre la valeur entrée par l'élève via keepas=intensiteCal ?
\FPeval{\PuissanceLampe}{clip(25*trunc(1+3*random,0))}%\FPeval{\ApproxCalcul}{clip(10*\PuissanceLampe)} \FPeval{\PuissanceRadiateur}{clip(500*trunc(1+3*random,0))} \FPeval{\PuissancePlaque}{clip(500*trunc(1.5+3*random,0))} \FPeval{\PuissanceTotale}{clip(2000+2*\PuissanceLampe+\PuissanceRadiateur+\PuissancePlaque)} \FPeval{\Intensite}{round(\PuissanceTotale/230,1)} On branche simultanément deux lampes à incandescence de puissance $P_L= \SI{\PuissanceLampe}{W}$ chacune, un four électrique de puissance $P_F=\SI{2}{kW}$, une plaque de cuisson de puissance $P_C=\SI{\PuissancePlaque}{W}$ et un radiateur de puissance $P_R=\SI{\PuissanceRadiateur}{W}$.\bigskip \begin{multicols}{2} \begin{questionmultx}{Outils.PuissanceElectrique-a-Totale} Quelle est la puissance totale demandée par l'ensemble de ces appareils ? \AMCnumericChoices{\PuissanceTotale}{digits=4,decimals=0,keepas=PuissanceCal,approx=\PuissanceLampe} \end{questionmultx} \begin{questionmultx}{Outils.PuissanceElectrique-b-Intensite} La tension d'utilisation vaut $U=\SI{230}{V}$. Calculez l'intensité du courant $I$ qui traverse le disjoncteur lorsque tous les appareils sont branchés. \AMCnumericChoices{\Intensite}{digits=3,decimals=1,alsocorrect=PuissanceCal/230} \end{questionmultx} \end{multicols} \begin{question}{Outils.PuissanceElectrique-c-Disjoncteur}\bareme{b=0.5} Le disjoncteur se déclenche à partir d'une intensité $I_{MAX} = \SI{20}{A}$. Le disjoncteur se déclenche-t-il ?\vspace*{-2ex} \FPiflt{\Intensite}{20}{\begin{reponseshoriz}\bonne{Non}\mauvaise{Oui}\end{reponseshoriz}} \else{\begin{reponseshoriz}\bonne{Oui}\mauvaise{Non}\end{reponseshoriz}}\fi \end{question}
RE: reprendre un résultat dans la question suivante - Added by Alexis Bienvenüe about 4 years ago
Je ne pense pas.
A mon avis le mieux est de ne pas modifier les bonnes ou mauvaises réponses, mais le score affecté aux réponses quand on les coche (par le barème).
RE: reprendre un résultat dans la question suivante - Added by Liouba Leroux over 3 years ago
Bonjour,
j'ai essayé d'avoir une réponse numérique qui dépende d'une réponse non numérique :
ex :
question 1 : dans l'expression "2+3×5", quel est le premier calcul à effectuer
- l'addition
- la multiplication
question deux : quel est le résultat de ce premier calcul à effectuer
- nombre à saisir, dont la réponse dépend de la question précédente, afin de séparer compétence de respect des priorités opératoires et compétence de calcul pur.
Mon code :
\element{general}{ \begin{question}{a-priorite} dans l'expression $2+3\times5$, quel est le premier calcul à effectuer ? \begin{reponseshoriz}[o] \mauvaise{l'addition $2+3$}\scoring{0,setglobal.Reponse=A} \bonne{la multiplication $3\times5$}\scoring{1,setglobal.Reponse=M} \end{reponseshoriz} \end{question} \begin{questionmultx}{b-calcul} Quel est le résultat de cette première opération à effectuer ? \AMCnumericChoices{}{digits=2,approx=1,alsocorrect=((Reponse==A)*5+(Reponse==M)*15)} \end{questionmultx} }
mais j'ai une erreur de compilation
! LaTeX3 Error: Misplaced equals sign in key-value input on line 146
Une idée ?
J'avais pensé que la formule étant en perl, elle accepterait les tests :-)
Mais c'est le compilateur LateX qui bloque semble-t-il ? :-(
Merci d'avance pour vos idées !
RE: reprendre un résultat dans la question suivante - Added by Alexis Bienvenüe over 3 years ago
- il y a un signe égal dans la valeur d'un paramètre (
alsocorrect
), donc il doit falloir mettre des guillemets autour - la valeur
A
ne sera pas définie (il faut des valeurs numériques, ou bien mettre entre guillemets mais je ne sais pas si ça marchera bien)
Je propose de simplifier comme ça :
\element{general}{ \begin{question}{a-priorite} dans l'expression $2+3\times5$, quel est le premier calcul à effectuer ? \begin{reponseshoriz}[o] \mauvaise{l'addition $2+3$}\scoring{0,setglobal.Reponse=5} \bonne{la multiplication $3\times5$}\scoring{1,setglobal.Reponse=15} \end{reponseshoriz} \end{question} \begin{questionmultx}{b-calcul}\scoring{MAX=2} Quel est le résultat de cette première opération à effectuer ? \AMCnumericChoices{}{digits=2,approx=1,alsocorrect=Reponse} \end{questionmultx} }
RE: reprendre un résultat dans la question suivante - Added by Liouba Leroux over 3 years ago
Oui, dans ce cas d'usage c'est beaucoup plus simple ainsi !
Et pour des cas plus "tordus", je note l'utilisation nécessaire des guillemets.
Merci beaucoup !
RE: reprendre un résultat dans la question suivante - Added by Liouba Leroux over 3 years ago
Juste une autre question.
Dans la proposition d'Alexis, Reponse est une variable globale. J'aurais tendance à penser qu'il n'y a pas d'inconvénient à la réutiliser pour chaque question de ce type puisque sa valeur est "immédiatement" utilisée dans \AMCnumericChoices mais je me méfie. Vous paraît-il plus prudent de changer de variable globale à chaque question ?
Merci encore !
RE: reprendre un résultat dans la question suivante - Added by Alexis Bienvenüe over 3 years ago
Il faut se méfier en effet. Les scores sont calculés question après question, en prenant les questions non pas dans l'ordre d'apparition sur les copies, mais dans l'ordre des identifiants de question.
Donc si vous faites la même chose avec deux questions a-choix
et b-final
, les scores seront calcules dans l'ordre a-choix
, a-priorite
, b-calcul
, b-final
et cela va créer des interférences. Il faut donc être très attentif aux identifiants de question, ou bien choisir des noms de variables globales différents.
RE: reprendre un résultat dans la question suivante - Added by Liouba Leroux over 3 years ago
Oui, d'accord. Je comprends le besoin. Même si çà augmente le risque d'oubli de mise à jour lors de copier-coller, je vais utiliser des variables différentes !
RE: reprendre un résultat dans la question suivante - Added by Alexis Bienvenüe over 3 years ago
L'autre solution consiste à utiliser des identifiants de question du genre calcul-priorite-a
et calcul-priorite-b
(mettre le a
et b
à la fin plutôt qu'au début)
RE: reprendre un résultat dans la question suivante - Added by Liouba Leroux almost 3 years ago
Bonjour,
j'ai repris une question de ce même devoir :
\element{priorite}{ \begin{multicols}{2} \begin{question}{a-priorite1} Dans l'expression $\dfrac{-13-(-5)+8\times(-5)}{-5}$, quel est le \textbf{premier} calcul à effectuer ? \begin{reponses}[o] \mauvaise{l'addition $(-5)+8$}\scoring{0,setglobal.Reponse1=3} \mauvaise{la soustraction $-13-(-5)$}\scoring{0,setglobal.Reponse1=-8} \bonne{la multiplication $8\times(-5)$}\scoring{1,setglobal.Reponse1=-40} \mauvaise{la division $(-5):(-5)$}\scoring{0,setglobal.Reponse1=1} \end{reponses} \end{question} \columnbreak \begin{questionmultx}{b-calcul1} Quel est le résultat de cette première opération à effectuer ? \AMCnumericChoices{}{digits=2,alsocorrect=Reponse1} \end{questionmultx} \end{multicols} \medskip }
Et la correction semble bien se passer, mais je m'aperçois que dans l'annotation des copies, la question b-calcul1 est toujours annotée avec des cercles rouges, comme si la réponse donnée par l'élève (même juste) était toujours fausse, ce qui est logique puisque la bonne réponse n'est pas renseignée.
Y aurait-il un inconvénient à mettre
\AMCnumericChoices{Reponse1}{digits=2}
plutôt ?
Et si la réponse est non, à le faire APRÈS la passation du devoir, comme une mise à jour du barème ?
D'ailleurs j'ai oublié de modifié une \bonne en \mauvaise, il me semble qu'on peut corriger l'erreur après la passation sans risque ?
Merci !
RE: reprendre un résultat dans la question suivante - Added by Frédéric Bréal almost 3 years ago
D'ailleurs j'ai oublié de modifié une \bonne en \mauvaise, il me semble qu'on peut corriger l'erreur après la passation sans risque ?
oui
la question b-calcul1 est toujours annotée avec des cercles rouges,
\AMCnumericChoices{}{digits=2,alsocorrect=Reponse1}
La bonne réponse est le premier argument de la commande donc AMC attend 0 (je pense).
Y aurait-il un inconvénient à mettre
\AMCnumericChoices{Reponse1}{digits=2}
Je dirais non, faites une copie du dossier et un essai.
RE: reprendre un résultat dans la question suivante - Added by Liouba Leroux almost 3 years ago
Merci !
C'est ce que j'ai fait (faire une copie du dossier) et cela ne fonctionne pas. Du coup, le fait que les corrigés produits soient faux me paraît une limite importante à cette possibilité de chaîner les questions.
Il serait souhaitable de pouvoir dépasser ce problème, peut-être est-ce déjà possible mais pour le moment je n'ai pas trouvé...
RE: reprendre un résultat dans la question suivante - Added by Alexis Bienvenüe almost 3 years ago
Ce n'est effectivement pas possible et cela demanderait assez de travail.
La seule chose que l'on peut faire est de demander que la 2e question ne soit pas annotée : cela limite les dégâts.