MultipleChoiceRadio1

From WeBWorK_wiki
Revision as of 11:10, 15 June 2021 by Dglin (talk | contribs) (Add link to Multiple Choice Problem Techniques page)
Jump to navigation Jump to search

Multiple Choice Question with Radio Buttons

Click to enlarge

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).


Templates by Subject Area

PG problem file Explanation

Problem tagging data

Problem tagging:

DOCUMENT();

loadMacros(
"PGstandard.pl",
"MathObjects.pl",
"parserRadioButtons.pl",
);

TEXT(beginproblem());

Initialization: We need parserRadioButtons.pl

Context("Numeric");

$radio = RadioButtons(
  ["Red","Blue","Green","None of these"],
  "Blue", # correct answer
  last => ["None of these"], # can be a list
);

Setup: To create a radio object, use $radio = RadioButtons([choices,...],correct,options); For all options, see MultipleChoiceProblems and parserRadioButtons.pl. The context is not really necessary, but multiple choice questions are often follow-up questions, so we leave it in.

Context()->texStrings;
BEGIN_TEXT
My favorite color is
$BR
$BR
\{ $radio->buttons() \}
END_TEXT
Context()->normalStrings;

Main Text:

install_problem_grader(~~&std_problem_grader);

$showPartialCorrectAnswers = 0;

ANS( $radio->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 \{ $radio->correct_ans() \}
END_SOLUTION
Context()->normalStrings;

COMMENT('MathObject version.');

ENDDOCUMENT();

Solution:

Templates by Subject Area