How to handle the answer ' * ' in numerical questiontype?

How to handle the answer ' * ' in numerical questiontype?

by Pierre Pichet -
Number of replies: 5
Hi Tim,

The 2,0 handling of numerical questions first grade the number then apply a penalty if the unit is not the right one.

In this context, I think that the ' * ' should mean any valid numerical value and not any character input.
We could then notify the student that his answer is not a valid number.

Given that any valid number will be is graded accordingly to the $answer->fraction, there should be no penalty for unit is this case as unit is not significant given that all numbers are allowed.

Normally the $answer->fraction is 0 for $answer->answer defined as ' * ' but the teacher could want to test their knowledge of number formats.


Pierre


Average of ratings: -
In reply to Pierre Pichet

Re: How to handle the answer ' * ' in numerical questiontype?

by Tim Hunt -
Picture of Core developers Picture of Documentation writers Picture of Particularly helpful Moodlers Picture of Peer reviewers Picture of Plugin developers
I am not convinced by the arguments for changing the behaviour of *.

In particular, I don't thing it is right to test number formatting by weird abuse of the numerical type. If you want to test that, use the regex question type.
In reply to Tim Hunt

Re: How to handle the answer ' * ' in numerical questiontype?

by Pierre Pichet -
I illustrate my proposal by the following example I am using in one of my courses.

Students need to calculate an acid molar concentration i.e. 0,005 mol/L with a tolerance of 0,00005 . As this is an exercise

My first answer is 0,005 , tolerance 0,00005 , grade 100%, feedback "Good response"
The second answer is 0,005 , tolerance 0,0005 , grade 80%, feedback "Not so bad but you are more than 1% and less than 10% from the correct value"

The third answer is 0,005 , tolerance 0,001 , grade 30%, feedback "Not so bad but you are more than 10% and less than 20% from the correct value"

The fourth answer is '*' , tolerance 0,001 , grade 0%, feedback "You are more than than 20% from the correct value, look at the example page 24 "

My proposal is if the number is so badly formatted that it is not recognized by the regexp analysis that is done in the numerical code, as a valid number, there will be an additional feedback of invalid number as there is a feedback for the units ("Unit not valid with this numerical value" or "Undefined unit").

If this does not convince you, I will stay with the "historical" behaviour.

Pierre


In reply to Pierre Pichet

Re: How to handle the answer ' * ' in numerical questiontype?

by Tim Hunt -
Picture of Core developers Picture of Documentation writers Picture of Particularly helpful Moodlers Picture of Peer reviewers Picture of Plugin developers
I think I would rather not change the historical behaviour until after Development:Question_Engine_2, where there is a proper 'invalid' state, which can be used to inform students in a good way that the answer they have given is not in the correct format.

(I have not implemented that yet for numerical questions. However, if you try to submit an blank answer to a numerical or shortanswer question in interactive or immediate feedback mode, you will see it.)
In reply to Tim Hunt

Re: How to handle the answer ' * ' in numerical questiontype?

by Pierre Pichet -
Let's wait.

In either case the grade is the same, the only change is the feedback to the student.

And we could hope that by this time, users will have given us feedback on the new unit handling in numerical and the related calculateds questions.


Pierre
In reply to Tim Hunt

Re: How to handle the answer ' * ' in numerical questiontype?

by Pierre Pichet -
proper 'invalid' state

After working for many days on the new engine Cloze question, I just forgot that an empty question ( invalid ) was a new behaviour.
Surely because I more often create quiz than answer them wink.


Pierre