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 Alexis Bienvenüe over 4 years ago

the holly graal

On avance sur cette quête grâce à la dernière version de développement d'AMC : voir fichiers ci-joints.
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

Plusieurs difficultés :
  • 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.

1 2 Next » (1-25/27)