process only the first responce in a Mutiple choice questions
November 18, 2014 12:00 AM
I want to present a multiple choice question with instant feedback for each choice. I want Lectora to process only the learners 1st choice. Giving instant feedback would allow the learner to click choices until they got it right. I want the feed back to show them why their incorrect choice was wrong but I want the score to reflect only their first response. Otherwise they will get 100% everytime because they will keep choosing an answer until they get it correct.
Hope this is clear
any suggestions?
Discussion (6)
Build your own question slide using radio buttons and textboxes and actions, instead of using the question functionality. Then you can do anything, including saving their first choice into a variable and ignoring other choices. It's a simply condition - "if variable X is empty, modify X, otherwise don't".
TimK's solution will work until the learner comes back to the page. Then they could select the correct answer and that would do it. So you need another action that sets first_answer to the Question variable BEFORE the timed action. That way it will NOT take the new answer.
I have not tried his solution but if "0" does not work, try Empty.
It should be possible to use Sergeys solution and use a normal Lectora question.
Create a variable, e.g. "first_answer", initial value "0"
Create an action:
On: Timed interval
Action: Modify variable
Target: first_answer
Type: Set equal to
Value: Question_0001 (the variable of the question on that page)
Condition: Only if "first_answer" equal to "0"
Create an action on page level:
On: Hide
Action: Modify variable
Target: Question_0001 (the variable of the question on that page)
Type: Set
Value: first_answer
So when the user leaves the page the question variable will contain the answer given in the first try.
If you reset the variable to "0" on each question page, you'll be able to use the first_answer variable for each of your questions.
Tim
Ben is correct of course.
You should add another condition to the timed action so it's:
Only if
first_answer equal to "0"
AND
Question_0001 is "not empty".
Otherwise first_answer would probably be something like: ~~~null~~~
If you want to allow the users to come back to the page, you can just reset the question and first_answer to "0" on page show and before the timed action.
Tim
Can you set the attempts for the question to 1? So once they select an answer, Lectora will disable the question, preventing your learner from selecting a different answer.
on page show I:
Reset the question
Set Q1firstchoice to 0 (each question has it's own first choice variable)
On each question choice button I:
added 1 to the Qx1stchoice variable on click
made Qx1stchoice the answer to the question only if Qx1stchoice is equal to 1
Now only the first choice will be passed to the question variable - subsequent selections will not.
thanks all for your suggestions.
Discussions have been disabled for this post