Difference between revisions of "FactoredPolynomial1"
Line 86:  Line 86:  
<p> 
<p> 

<b>Setup:</b> 
<b>Setup:</b> 

−  <p> 

For the factored form we need to change to the <code>PolynomialFactorsStrict</code> context and restrict the allowed powers to either 0 or 1 using the <code>LimitedPowers::OnlyIntegers</code> block of code. Note: restricting all exponents to 0 or 1 means that repeated factors will have to be entered in the form <code>k(ax+b)(ax+b)</code> instead of <code>k(ax+b)^2</code>. Also, restricting all exponents to 0 or 1 means that the polynomial must factor as a product of linear factors (no irreducible quadratic factors can appear). Of course, we could allow exponents to be 0, 1, or 2, but then students would be allowed to enter <i>reducible</i> quadratic factors. There are no restrictions on the coefficients, i.e., the quadratic could have any nonzero leading coefficient. We set <code>singleFactors=>0</code> so that repeated, nonsimplified factors do not generate errors. 
For the factored form we need to change to the <code>PolynomialFactorsStrict</code> context and restrict the allowed powers to either 0 or 1 using the <code>LimitedPowers::OnlyIntegers</code> block of code. Note: restricting all exponents to 0 or 1 means that repeated factors will have to be entered in the form <code>k(ax+b)(ax+b)</code> instead of <code>k(ax+b)^2</code>. Also, restricting all exponents to 0 or 1 means that the polynomial must factor as a product of linear factors (no irreducible quadratic factors can appear). Of course, we could allow exponents to be 0, 1, or 2, but then students would be allowed to enter <i>reducible</i> quadratic factors. There are no restrictions on the coefficients, i.e., the quadratic could have any nonzero leading coefficient. We set <code>singleFactors=>0</code> so that repeated, nonsimplified factors do not generate errors. 

</p> 
</p> 
Revision as of 15:21, 1 December 2010
Polynomial Factoring
This PG code shows how to require students to factor a polynomial.
 Download file: File:FactoredPolynomial1.txt (change the file extension from txt to pg when you save it)
 File location in NPL:
NationalProblemLibrary/FortLewis/Authoring/Templates/Algebra/FactoredPolynomial1.pg
PG problem file  Explanation 

Problem tagging: 

DOCUMENT(); loadMacros( "PGstandard.pl", "MathObjects.pl", "contextPolynomialFactors.pl", "contextLimitedPowers.pl", ); TEXT(beginproblem()); 
Initialization:
We require additional contexts provided by 
# # Vertex form # Context("Numeric"); $poly = Compute("8x^2+28x+12"); # # Factored form # Context("PolynomialFactorsStrict"); Context()>flags>set(singleFactors=>0); LimitedPowers::OnlyIntegers( minPower => 0, maxPower => 1, message => "either 0 or 1", ); $factored = Compute("4(2x+1)(x+3)"); 
Setup:
For the factored form we need to change to the 
Context()>texStrings; BEGIN_TEXT Write the quadratic expression \( $poly \) in factored form \( k(ax+b)(cx+d) \). $BR $BR \{ ans_rule(30)\} END_TEXT Context()>normalStrings; 
Main Text:
We should explicitly tell students to enter answers in the form 
$showPartialCorrectAnswers = 1; ANS( $factored>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: 