AlgebraicFractions
Algebraic Fractions in Student Answers
This code shows how to format questions in which the answer is an algebraic fraction that has separate answer blanks for the numerator and denominator that are stacked on top of each other like a fraction. Stacking the answer blanks is nice formatting that simplifies how to ask students for the parts of a fraction separately. In addition, having two separate answer blanks is useful for requiring students to simplify their answer as much as possible.
PG problem file | Explanation |
---|---|
DOCUMENT(); loadMacros( "PGstandard.pl", "PGunion.pl", "MathObjects.pl", "answerHints.pl", "PGcourse.pl", ); TEXT(beginproblem()); |
Initialization:
We include the macros file |
Context("Numeric"); $fraction = "\frac{d}{dx} \left( \frac{-(x^2+4)}{(x^2-4)^2} \right)"; $num = Formula("2 * x * (x**2 + 12)")->reduce; $den = Formula("(x**2 - 4)**3")->reduce; # # Display the fraction and answer blanks nicely # Context()->texStrings; if ($displayMode eq 'TeX') { $showfraction = "\[ $fraction = ".ans_rule(10).ans_rule(10)." \]"; } else { $showfraction = ColumnTable( "\( \displaystyle $fraction = \)", ans_rule(20).$BR.$HR.ans_rule(20), indent => 0, separation => 10, valign => "MIDDLE" ); } Context()->normalStrings; |
Setup:
We define a string
We define a mode-dependent string
To get fractions that have a large font size, be sure to use the LaTeX command \( \displaystyle\frac{ \displaystyle\frac{a}{b} }{ \displaystyle\frac{c}{d} } \) |
Context()->texStrings; BEGIN_TEXT Calculate the indicated derivative. Simplify your answer as much as possible. $BR $BR $BCENTER $showfraction $ECENTER END_TEXT Context()->normalStrings; |
Main Text:
Everything is as usual. Insert the fraction and answer blanks using |
$showPartialCorrectAnswers = 1; install_problem_grader(~~&std_problem_grader); ANS( $num->cmp() ->withPostFilter(AnswerHints( Formula("-2x(x^2-4)+4(x^2+4)(x^2-4)") => "Simplify your answer further.", )) ); ANS( $den->cmp() ->withPostFilter(AnswerHints( Formula("(x^2-4)^4") => "Simplify your answer further.", )) ); ENDDOCUMENT(); |
Answer Evaluation:
If you want to give students feedback on whether their numerator and denominator are correct, set We added custom answer hints to let the student know when they have a correct answer that can be simplified. |