Eval()vs.substitute()

From WeBWorK_wiki
Jump to navigation Jump to search
This article has been retained as a historical document. It is not up-to-date and the formatting may be lacking. Use the information herein with caution.

This problem has been replaced with a newer version of this problem

The aim of this page is to demonstrate the difference between eval() and substitute.

Note:PGLabs is an efficient way to check code.

$f = Compute(sqrt(3x + 1);
$fx = $f->eval(x=>"3");
displays 3.16228

The correct answer is a number.

$f = Compute(sqrt(3x + 1);
$fx = $f->substitute(x=>"3");
displays (3.16228)

The correct answer is a formula (hence the parenthesis)

One of the biggest differences between eval() and substitute is when they are used in conjunction with flags such as reduceConstants and reduceConstantFunctions, which is described in more detail at:FormattingCorrectAnswers:_NumbersAndFormulas