RecursivelyDefinedFunctions
(Update documentation links) |
m |
||
Line 66: | Line 66: | ||
<td style="background-color:#ffdddd;border:black 1px dashed;"> | <td style="background-color:#ffdddd;border:black 1px dashed;"> | ||
<pre> | <pre> | ||
+ | Context()->texStrings; | ||
BEGIN_TEXT | BEGIN_TEXT | ||
The current value \( f(n) \) is three | The current value \( f(n) \) is three | ||
Line 74: | Line 75: | ||
\( f(n) \) = \{ ans_rule(20) \} | \( f(n) \) = \{ ans_rule(20) \} | ||
END_TEXT | END_TEXT | ||
+ | Context()->normalStrings; | ||
</pre> | </pre> | ||
<td style="background-color:#ffcccc;padding:7px;"> | <td style="background-color:#ffcccc;padding:7px;"> |
Latest revision as of 12:28, 25 February 2011
Recursively Defined Functions (Sequences)
This PG code shows how to check student answers that are recursively defined functions.
PG problem file | Explanation |
---|---|
DOCUMENT(); loadMacros( "PGstandard.pl", "MathObjects.pl", "parserFunction.pl", ); TEXT(beginproblem()); |
Initialization:
We will be defining a new named function and adding it to the context, and the easiest way to do this is using |
Context("Numeric")->variables->are(n=>"Real"); parserFunction(f => "sin(pi^n)+e"); $fn = Formula("3 f(n-1) + 2"); |
Setup:
We define a new named function |
Context()->texStrings; BEGIN_TEXT The current value \( f(n) \) is three times the previous value, plus two. Find a recursive definition for \( f(n) \). Enter \( f_{n-1} \) as \( f(n-1) \). $BR \( f(n) \) = \{ ans_rule(20) \} END_TEXT Context()->normalStrings; |
Main Text: The problem text section of the file is as we'd expect. We should tell students to use function notation rather than subscript notation so that they aren't confused about syntax. |
$showPartialCorrectAnswers=1; ANS( $fn->cmp() ); ENDDOCUMENT(); |
Answer Evaluation: As is the answer. |
- POD documentation: parserFunction.pl.html
- PG macro: parserFunction.pl