Difference between revisions of "MultipleChoicePopup2"

From WeBWorK_wiki
Jump to navigation Jump to search
(categorizing subject area templates questions)
Line 152: Line 152:
 
[[Category:Top]]
 
[[Category:Top]]
 
[[Category:Authors]]
 
[[Category:Authors]]
  +
[[Category:Sample Problems]]
  +
[[Category:Subject Area Templates]]

Revision as of 15:10, 3 January 2012

Multiple Choice Question with a Popup Menu

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

  • Download file: File:MultipleChoicePopup2.txt (change the file extension from txt to pg when you save it)
  • File location in NPL: FortLewis/Authoring/Templates/Misc/MultipleChoicePopup2.pg



Templates by Subject Area

PG problem file Explanation

Problem tagging data

Problem tagging:

DOCUMENT();

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

TEXT(beginproblem());

Initialization: We need parserPopUp.pl

Context("Numeric");

$popup = PopUp(
  ["?","Red","Blue","Green"],
  "Blue",
);

Setup: To create a radio object, use $popup = PopUp([choices,...],correct); For details, see parserPopUp.pl.html The context is not really necessary, but multiple choice questions are often follow-up questions, so we leave it in.

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:

Templates by Subject Area