Bonnes réponses et valeurs aléatoires

Added by Antoine Bluheim almost 4 years ago

Bonjour,
Je souhaite faire un QCM de Sciences dans lequel les élèves devront cocher les valeurs qui peuvent correspondre à un pH acide (donc inférieur à 7).
Pour cela, j'utilise FP pour générer mes nombres aléatoires.
\FPeval\phacide{round(0.1 + 6.8*random,1)} % Génération d'une valeur de pH acide entre 0.1 et 6.9
\FPeval\phbasique{round(7.1 + 6.9*random,1)} % Génération d'une valeur de pH basique entre 7.1 et 14
Je propose 12 choix à la question et je souhaite qu'il y en ai un nombre aléatoire entre 1 et 8 de fausses et le complément en bonnes. Pour cela je définis
\FPeval\random{trunc(1+7*random,0)} %Nombre aléatoire entre 1 et 8 --> nombre de mauvaises réponses
Comment-puis je faire ensuite pour proposer sur chaque copies les propositions bonnes et fausses mélangées après mon \begin{reponses} ?
Merci de votre aide.
Antoine


Replies (6)

RE: Bonnes réponses et valeurs aléatoires - Added by Frédéric Bréal almost 4 years ago

Créez-vous huit valeurs acides avec un nom pour chacune phacideB, phacideB … ?

RE: Bonnes réponses et valeurs aléatoires - Added by Antoine Bluheim almost 4 years ago

Non mais je peux!J'avais pas pensé à ça. Mais après je peux avoir plusieurs fois la même...

RE: Bonnes réponses et valeurs aléatoires - Added by Frédéric Bréal almost 4 years ago

oui, c'est le risque mais vous pouvez tentez de contrôler avec un code OR https://project.auto-multiple-choice.net/boards/4/topics/10598
Mon idée initiale était de faire des groupes acide et basiques :

\element{valeursAcides}{\bonne{valeur calculée}}
\element{valeursBasiques}{\mauvaise{valeur calculée}}

puis de les appeler dans l'environnement réponses
\restituegroupe[X]{valeursAcides}
\restituegroupe[12-X]{valeursBasiques}

mais AMC bloque.

RE: Bonnes réponses et valeurs aléatoires - Added by Alexis Bienvenüe almost 4 years ago

Ou bien quelque chose comme ça ?

\def\reponseph#1{
  \FPiflt{#1}{7}\bonne{#1}\else\mauvaise{#1}\fi
}
\def\unereponseph{
  \FPeval\ph{round(1 + random * 14,1)}
  \expandafter\reponseph\expandafter{\ph}
}

\element{groupemath}{

\begin{questionmult}{ph}
  Quels sont les pH acides ?
  \begin{multicols}{3}
    \begin{reponses}
      \unereponseph
      \unereponseph
      \unereponseph
      \unereponseph
      \unereponseph
      \unereponseph
      \unereponseph
      \unereponseph
    \end{reponses}
  \end{multicols}
\end{questionmult}

}

RE: Bonnes réponses et valeurs aléatoires - Added by Frédéric Bréal almost 4 years ago

Alors là bravo, cette commande, je la garde aussi.

Avec siunitx, on peut avoir la virgule

\usepackage{siunitx}
\sisetup{locale = FR}
\def\reponseph#1{ 
  \FPiflt{#1}{7}\bonne{\num{#1}}\else\mauvaise{\num{#1}}\fi
}

RE: Bonnes réponses et valeurs aléatoires - Added by Antoine Bluheim almost 4 years ago

Ahhh superbe! Merci!
Je connaissais pas toutes ces options pour fp!
J'ai fait celle aussi pour le pH basique.
\def\reponsephbasique#1{
\FPifgt{#1}{7}\bonne{\num{#1}}\else\mauvaise{\num{#1}}\fi
}
\def\unereponsephbasique{
\FPeval\phbasique{round(1 + random * 13,1)}
\expandafter\reponsephbasique\expandafter{\phbasique}
}

Merci beaucoup! ^^

(1-6/6)