ExpandedPolynomial1

From WeBWorK_wiki
Revision as of 12:49, 1 December 2010 by Pearson (talk | contribs)
Jump to navigation Jump to search

Polynomial Multiplication (Expanding)

This PG code shows how to require students to expand polynomial multiplication.

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

Templates by Subject Area

PG problem file Explanation

Problem tagging data

Problem tagging:

DOCUMENT();

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

TEXT(beginproblem()); 

Initialization:

#
#  Vertex form
#
Context("Numeric");
$h = 3;
$k = 5;
$vertexform = Compute("(x-$h)^2-$k");

#
#  Expanded form
#
Context("LimitedPolynomial-Strict");
$b = -2 * $h;
$c = $h**2 - $k;
$expandedform = Formula("x^2 + $b x + $c")->reduce();

Setup: The macro contextLimitedPolynomial.pl provides two contexts:

Context("LimitedPolynomial");
Context("LimitedPolynomial-Strict");

The strict version does not allow any mathematical operations within coefficients, so (5+3)x must be simplified to 8x. For more details, see contextLimitedPolynomial.pl.html

We use the LimitedPolynomial-Strict context, construct the coefficients $b and $c as Perl reals, and then construct $expandedform using these pre-computed coefficients. This is because the LimitedPolynomial-Strict context balks at answers that are not already simplified completely. Notice that we called the ->reduce() method on the expanded form of the polynomial, which will ensure that the polynomial will be displayed as x^2 - 6x + 4 instead of x^2 + -6x + 4.

Context()->texStrings;
BEGIN_TEXT
The quadratic expression \( $vertexform \)
is written in vertex form.  Write the 
expression in expanded form 
\( ax^2 + bx + c \).
$BR
$BR
\{ ans_rule(30) \}
END_TEXT
Context()->normalStrings;

Main Text: To help students understand how to format their answers, we give an example ax^2+bx+c of what the answer should look like.

$showPartialCorrectAnswers = 1;

ANS( $expandedform->cmp() );

Answer Evaluation: Everything is as expected.


Context()->texStrings;
BEGIN_SOLUTION
${PAR}SOLUTION:${PAR}
Solution explanation goes here.
END_SOLUTION
Context()->normalStrings;

COMMENT('MathObject version.');

ENDDOCUMENT();

Solution:

Templates by Subject Area