StringOrOtherType1
Answer is a String, or a Number, or a Function, etc.
This PG code shows how to prevent error messages from appearing when an answer may be one of several data types.
- Download file: File:StringOrOtherType1.txt (change the file extension from txt to pg when you save it)
- File location in NPL:
FortLewis/Authoring/Templates/Precalc/StringOrOtherType1.pg
PG problem file | Explanation |
---|---|
Problem tagging: |
|
DOCUMENT(); loadMacros( "PGstandard.pl", "MathObjects.pl", "AnswerFormatHelp.pl", ); TEXT(beginproblem()); |
Initialization: |
Context("Numeric"); $y = random(0,4,1); if ($y < 4) { $answer = String("none"); } else { $answer = Formula("2*x"); } |
Setup:
There are several predefined strings, such as |
Context()->texStrings; BEGIN_TEXT Is there a line through the points \( (0,0) \), \( (1,2) \), and \( (2,$y) \)? If there is, the equation for this line. If not, enter ${BITALIC}NONE${EITALIC}. $BR $BR \( y = \) \{ ans_rule(20) \} \{ AnswerFormatHelp("formulas") \} END_TEXT Context()->normalStrings; |
Main Text: |
$showPartialCorrectAnswers = 1; ANS( $answer->cmp( typeMatch=>Formula("x") ) ); |
Answer Evaluation:
When |
Context()->texStrings; BEGIN_SOLUTION ${PAR}SOLUTION:${PAR} Solution explanation goes here. END_SOLUTION Context()->normalStrings; COMMENT('MathObject version.'); ENDDOCUMENT(); |
Solution: |