Grading scheme of AMCnumericChoice is off (Bug #393)
Description
I am using the questions below (either interval or numeric) in a 16-paper random-order test for my students.
I would expect to see 0 or 5 points for the interval questions, and 0, 3, or 5 points for the numerical, in accordance with their answers.
What I get after scoring is 0, 2, and 5 for interval, and 0, 2, 3, 5 and 7 (!!) points for the numeric ... any ideas what is wrong here?
\element{keplerSkill}{ \begin{question}{cometApohelInterval}\scoring{e=0,v=0,b=5,m=0} \FPeval\FOne{ trunc(1.0 + trunc(random * 3,0),0) } \FPeval\FTwo{ trunc(5.0 + 2*trunc(random * 2,0),0) } \FPeval\RMin{ (trunc(2 + random * 4,1)) } \FPeval\RMax{ ((FOne + FTwo) / (FTwo - FOne) * RMin) } \calcQuestion{} A comet with a perihelion (closest distance to the sun) of \RMin ~AU (astronomical units) has an eccentricity $\epsilon$ of $\frac{\FOne}{\FTwo}$. What is its aphelion (in AU)? Select the right interval.~(5 points) \begin{multicols}{4} \begin{choices}[o] \AMCIntervals{\RMax}{2}{25}{2} \end{choices} \end{multicols} \end{question} } \element{keplerSkill}{ \begin{questionmultx}{cometApohelNumChoice} \FPeval\FOne{ trunc(1 + trunc(random * 3,0),0) } \FPeval\FTwo{ trunc(5 + 2*trunc(random * 2,0),0) } \FPeval\RMin{ trunc(2 + random * 4,1) } \FPeval\RMax{ ((FOne + FTwo) / (FTwo - FOne) * RMin) } \calcQuestion{} A comet with a perihelion (closest distance to the sun) of \RMin~AU (astronomical units) has an excentricity $\epsilon$ of $\frac\FOne\FTwo$. What is its apohelion (in AU)? Calculate the value to one decimal.~(5 points) \AMCnumericChoices{\RMax}{digits=3,decimals=1,sign=true, borderwidth=0pt,backgroundcol=white, exact=2, approx=5, scoreexact=5, scoreapprox=3} \end{questionmultx} }
History
Updated by Gerhard Blab over 9 years ago
After realizing that the scoring of the /AMCInterval and /AMCnumericChoices depended on where in the test the question was located, I have changed the /scoring in two different of my questions (from \scoring{mz=2} to \scoring{e=0,v=0,b=2,m=0}), which seems to solve the issue. Still, it is a bug, as scoring in one question messes up (exclusively) the scoring of following questions!
Updated by Gerhard Blab over 9 years ago
I have generated a sort of 'minimal' version of the test in question. The problem becomes apparent when filling in e.g. version 1, 3, 6, 10 and 15 (all correct answers) - all version should have the same number of points, the only difference are two questions which are given either as /AMCInterval or /AMCnumericChoice (both worth 5 points). In this example, the grading of the /AMCInterval question leads to a later question gaining 5 points (qMone and qMtwo, should be 3, gets 8 points) ...
I am stumped why the order (or type) of one question can change the points value of another question; I would be very happy if someone could point out the error that I made -- that would be the easiest solution -- but otherwise this would be some pretty major bug in this otherwise very helpful program ...
- File source.tex added
- File minimal.tex added
- File DOC-sujet.pdf added
- File QuizTestMinimal.csv added
Updated by Alexis Bienvenüe over 9 years ago
- Description changed from I am using the questions below (either interval or numeric) in a 16-paper ... to I am using the questions below (either interval or numeric) in a 16-paper ... More
Updated by Alexis Bienvenüe over 9 years ago
Could you provide a minimal working example? I mean the shortest possible source file that shows this problem.
Updated by Gerhard Blab over 9 years ago
Thank you for your quick response and for tackling this issue!
I have attached a three-question example. The value of a multiple-choice question (qMone) changes from 3 to 8 points depending on whether a second question is an interval(exams 1 and 2) or numChoice (exams 3 and 4) version. I do not think I can reduce it any further.
Alexis Bienvenüe wrote:
Could you provide a minimal working example? I mean the shortest possible source file that shows this problem.
- File QuizTestMinimal.tbz2 added
Updated by Alexis Bienvenüe over 9 years ago
In the definition of mGInterval
, the \scoring
command should be called inside the question
environment, otherwise this also applies to other questions.
Updated by Gerhard Blab over 9 years ago
Thank you, and apologies for the obvious mistake - I would not have found it in 100 years ... Merci!
Alexis Bienvenüe wrote:
In the definition of
mGInterval
, the\scoring
command should be called inside thequestion
environment, otherwise this also applies to other questions.
Updated by Alexis Bienvenüe over 9 years ago
- % Done changed from 0 to 100
- Status changed from New to Closed