Difference between revisions of "Volume3"

From WeBWorK_wiki
Jump to navigation Jump to search
m
Line 5: Line 5:
 
This PG code shows how to ask students to set up a volume of solids of revolution integral in which all parts must be correct for the student to receive any credit.
 
This PG code shows how to ask students to set up a volume of solids of revolution integral in which all parts must be correct for the student to receive any credit.
 
</p>
 
</p>
* Download file: [[File:Volume3.txt]] (change the file extension from txt to pg when you save it)
 
  +
* File location in OPL: [https://github.com/openwebwork/webwork-open-problem-library/blob/master/OpenProblemLibrary/FortLewis/Authoring/Templates/IntegralCalc/Volume3.pg FortLewis/Authoring/Templates/IntegralCalc/Volume3.pg]
* File location in NPL: <code>FortLewis/Authoring/Templates/IntegralCalc/Volume3.pg</code>
 
   
 
<br clear="all" />
 
<br clear="all" />
Line 179: Line 178:
 
Context()->texStrings;
 
Context()->texStrings;
 
BEGIN_SOLUTION
 
BEGIN_SOLUTION
${PAR}SOLUTION:${PAR}
 
 
Solution explanation goes here.
 
Solution explanation goes here.
 
END_SOLUTION
 
END_SOLUTION

Revision as of 16:03, 16 June 2013

A Question That Provides Credit Only When All Answers Are Correct

Click to enlarge

This PG code shows how to ask students to set up a volume of solids of revolution integral in which all parts must be correct for the student to receive any credit.


Templates by Subject Area

PG problem file Explanation

Problem tagging data

Problem tagging:

DOCUMENT();

loadMacros(
"PGstandard.pl",
"MathObjects.pl",
"PGunion.pl",
"answerHints.pl",
);

TEXT(beginproblem());

install_problem_grader(~~&std_problem_grader);

$showPartialCorrectAnswers = 1;

Initialization: We install the standard problem grader, which is an all-or-nothing grader.

Context("Numeric");
Context()->variables->are(
x=>"Real", dx=>"Real",
y=>"Real", dy=>"Real"
);

$f = Compute("x");
$g = Compute("x^2");

$upper = Real("1");
$lower = Real("0");
# answers below are intentionally wrong
$int = Compute("( pi x - pi x^2 ) dx");
$vol = Compute("pi"); 


#
#  Display the answer blanks properly in different modes
#
Context()->texStrings;
if ($displayMode eq 'TeX') {
   $integral =
   'Volume = \(\displaystyle' . 
     '\int_{'. 
     ans_rule(4). '}^{'. 
     ans_rule(4). '}'. 
     ans_rule(30). ' = '.
     ans_rule(10). 
   '\)';
  } else {
   $integral =
   BeginTable(center=>0).
     Row([
       'Volume = \(\displaystyle\int\)',
       ans_rule(4).$BR.$BR.
       ans_rule(4),
       ans_rule(30).$SPACE.' = '.$SPACE.
       ans_rule(10),
     ],separation=>2).
   EndTable();
}
Context()->normalStrings;

Setup: Notice that we use ans_rule(width) for all of the answer blanks.

Context()->texStrings;
BEGIN_TEXT
Set up and evaluate an integral for the volume
of the solid of revolution obtained by rotating
the region bounded by \( y = $f \) and \( y = $g \)
about the \(x\)-axis.
$BR
$BR
$integral
END_TEXT
Context()->normalStrings;

Main Text: The standard problem grader automatically provides a message to students that says the grading will be all or nothing.

ANS( $upper->cmp() );
ANS( $lower->cmp() );
ANS( $int->cmp()
->withPostFilter(AnswerHints( 
  Formula("pi x - pi x^2 dx") => "Don't forget to multiply every 
                                  term in the integrand by dx",
  Formula("pi x - pi x^2") => "Don't forget the differential dx", 
  Formula("(pi x^2 - pi x)*dx") => "Is the parabola above the line?",
  Formula("pi x^2 - pi x") => "Is the parabola above the line?",
))
);
ANS( $vol->cmp() );

Answer Evaluation:

Context()->texStrings;
BEGIN_SOLUTION
Solution explanation goes here.
END_SOLUTION
Context()->normalStrings;


COMMENT('MathObject version.  Gives full credit only 
if all answers are correct.');

ENDDOCUMENT();

Solution:

Templates by Subject Area