LimitsOfIntegration1
Answer Blanks in the Limits of Integration
This PG code shows how to put answer blanks into the limits of integration.
- File location in OPL: FortLewis/Authoring/Templates/IntegralCalc/LimitsOfIntegration1.pg
- PGML location in OPL: FortLewis/Authoring/Templates/IntegralCalc/LimitsOfIntegration1_PGML.pg
The approach given on this page has certain disadvantages in terms of the "reading order" of the content for screen reader users due to the manner in which visual formatting using tables is achieved.
<Another, CSS based approach can be found in [1] and allows keeping a more natural "reading" order to the content.
PG problem file | Explanation |
---|---|
Problem tagging: |
|
DOCUMENT(); loadMacros( "PGstandard.pl", "MathObjects.pl", "PGunion.pl", "answerHints.pl", ); TEXT(beginproblem()); |
Initialization:
We must use |
Context("Numeric"); Context()->variables->are( x=>"Real", dx=>"Real", t=>"Real", dt=>"Real" ); $fpx = Formula("sin(x)"); $fpt = Formula("sin(t)"); # # Display the answer blanks properly in different modes # Context()->texStrings; if ($displayMode eq 'TeX') { $integral = '\(\displaystyle f(x) = '. ans_rule(4). '+ \int_{t = '. ans_rule(4). '}^{t = '. ans_rule(4). '}'. ans_rule(20). '\)'; } else { $integral = BeginTable(center=>0). Row([ '\(f(x)=\)'.$SPACE.ans_rule(4).$SPACE.'\(+\displaystyle\int\)', '\( t = \)'.ans_rule(4).$BR.$BR.'\( t = \)'.ans_rule(4), ans_rule(20)],separation=>2). EndTable(); } Context()->normalStrings; |
Setup: The block of code that puts the answer blanks into the exponents correctly in HTML and TeX modes probably does not need to be modified. |
Context()->texStrings; BEGIN_TEXT Find a formula for the function \(f(x)\) such that \( \displaystyle f'(x)= $fpx \) and \( f(2)=5 \). $BR $BR $integral END_TEXT Context()->normalStrings; |
Main Text:
To display the integral with answer blanks in the limits of integration properly, we insert it using |
$showPartialCorrectAnswers = 1; ANS( Compute("5")->cmp() ); ANS( Compute("x")->cmp() ); ANS( Compute("2")->cmp() ); ANS( Compute("$fpt * dt")->cmp() ->withPostFilter(AnswerHints( Formula("$fpx") => "Are you using the correct variable?", Formula("$fpx*dx") => "Are you using the correct variable?", Formula("$fpt") => "Don't forget the differential dt", )) ); |
Answer Evaluation:
We use |
Context()->texStrings; BEGIN_SOLUTION Solution explanation goes here. END_SOLUTION Context()->normalStrings; COMMENT('MathObject version'); ENDDOCUMENT(); |
Solution: |