Difference between revisions of "MultipleChoicePopup2"
Paultpearson (talk | contribs) (Add link to PGML version in OPL) |
|||
Line 77: | Line 77: | ||
<b>Setup:</b> |
<b>Setup:</b> |
||
To create a radio object, use <code>$popup = PopUp([choices,...],correct);</code> |
To create a radio object, use <code>$popup = PopUp([choices,...],correct);</code> |
||
− | For details, see [http://webwork.maa.org/pod/ |
+ | For details, see [http://webwork.maa.org/pod/pg/macros/parserPopUp.html parserPopUp.pl] The context is not really necessary, but multiple choice questions are often follow-up questions, so we leave it in. |
</p> |
</p> |
||
</td> |
</td> |
Revision as of 17:06, 7 April 2021
Multiple Choice Question with a Popup Menu
This PG code shows how to write a multiple choice question in which all of the options are displayed to the student and the student can only choose one correct answer (it uses radio buttons).
- File location in OPL: FortLewis/Authoring/Templates/Misc/MultipleChoicePopup2.pg
- PGML location in OPL: FortLewis/Authoring/Templates/Misc/MultipleChoicePopup2_PGML.pg
PG problem file | Explanation |
---|---|
Problem tagging: |
|
DOCUMENT(); loadMacros( "PGstandard.pl", "MathObjects.pl", "parserPopUp.pl", ); TEXT(beginproblem()); |
Initialization:
We need |
Context("Numeric"); $popup = PopUp( ["?","Red","Blue","Green"], "Blue", ); |
Setup:
To create a radio object, use |
Context()->texStrings; BEGIN_TEXT Is my favorite color red, blue, or green? \{ $popup->menu() \} END_TEXT Context()->normalStrings; |
Main Text: Since popup menus hide their choices, we write the entire list of choices into the question. It is essential to do this, otherwise a student who is working from a PDF copy of their homework won't know what the options are and won't be able to answer the question. |
install_problem_grader(~~&std_problem_grader); $showPartialCorrectAnswers = 0; ANS( $popup->cmp() ); |
Answer Evaluation: We withhold feedback by choosing not to show partially correct answers. We use the standard problem grader, which gives full credit or no credit. For other graders, see weighted graders |
Context()->texStrings; BEGIN_SOLUTION ${PAR}SOLUTION:$PAR The correct answer is \{ $popup->correct_ans() \} END_SOLUTION Context()->normalStrings; COMMENT('MathObject version.'); ENDDOCUMENT(); |
Solution: |