PopUpListsLong

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)

Pop-Up Lists That Are Long: PG Code Snippet

This code snippet shows the PG code to create lengthy pop-up lists in a WeBWorK problem. Note that these are insertions, not a complete PG file. This code will have to be incorporated into the problem file on which you are working.

PG problem file Explanation
DOCUMENT();

"PG.pl",
"PGstandard.pl",
"PGcourse.pl",
"PGchoicemacros.pl",
);

TEXT(beginproblem);

Initialization: We need to include the PGchoicemacros.pl macro file.

"Larry is one of the three stooges.","True",
"$$\pi$$ is rational","False",
"Gandalf is one of the three stooges.","False"
);

Set-up: An array in which questions alternate with answers.

BEGIN_TEXT

Are the following statements true or false?
$PAR END_TEXT Instructions and Question for all parts: self explanatory.$n = scalar(@questions_and_answers)/2;
@shuffle = shuffle($n); @abc = (a..z); for$jj (0..$n-1) {$j = $shuffle[$jj];
BEGIN_TEXT
@abc[$jj]. \{ pop_up_list(['?', 'True', 'False']) \}$SPACE
$questions_and_answers[2*$j]
$BR$BR
END_TEXT
ANS(str_cmp($questions_and_answers[2*$j+1], filters=>["trim_whitespace","compress_whitespace"]));
}

ENDDOCUMENT();

Main Text and Answer Evaluation: Shuffle the order of the questions, then use a for loop to generate one question and answer for each pair in the array @questions_and_answers.