|Sorry for the nondescriptive title, but I couldn't think of a way to summarize the issue.
In almost all cases, I like to give my students unlimited attempts to
get each problem correct. The only exception is when I am doing
true/false or multiple-choice questions. For example, I gave them a
homework problem last week that was basically this:
Here are ten series, tell me if each one converges or diverges.
Obviously, I can't give them unlimited attempts on this. They could all
get 100% in about 60 seconds without giving the problems any thought at
all. So what I did was to set $showpartialcorrectanswers = 0 so that
they could not see which were right and which were wrong. Then I give
them something like 5 tries to get the whole batch of 10 problems. That
gives them plenty of chances to correct mistakes, but prevents
brute-force methods. I've given this problem in past semesters and
thought it was great. When told that they did not yet have full credit,
students were forced to re-evaluate *all* their answers, which not only
helped them find mistakes, but also helped reinforce the ones they
But this time...
Some students noticed, and I had told them before on previous
assignments, that once you had gotten an answer correct, you were given
credit for the answer even if you later submitted over it with a wrong
answer. So some clever students discovered --- and were nice enough to
tell me about --- the loophole: submit all "converges", then change
them all to "diverges" and re-submit. Then you'll be guaranteed to have
answered each question correctly at some point and thus have 100%.
Is there any way to turn off the above behavior, and have WeBWorK only
count the most recent attempt? It appears that the answer has something
to do with $problem->status in the file
lib/WeBWorK/ContentGenerator/Problem.pm, but I'm not quite confident
enough to go in there and start changing things.
Better yet, is there any other way to give multiple attempts on
true/false questions? I know that sounds like a funny question, but
I've given this question to previous (less clever/devious) classes and
it's been a very successful one, in the sense that it's gotten them to
Thanks very much,
<| Post or View Comments |>