Difference between revisions of "Eval()vs.substitute()"

From WeBWorK_wiki
Jump to navigation Jump to search
(New page: The aim of this page is to demonstrate the difference between <code> eval() </code> and <code> substitute </code>. Note:PGLabs is an efficient way to check code. $f = Compute(sqrt(3...)
 
(added historical tag and gave updated problem link)
 
(5 intermediate revisions by 4 users not shown)
Line 1: Line 1:
The aim of this page is to demonstrate the difference between <code> eval() </code> and <code> substitute </code>.
 
  +
{{historical}}
  +
  +
<p style="font-size: 120%;font-weight:bold">This problem has been replaced with [https://openwebwork.github.io/pg-docs/sample-problems/problem-techniques/EvalVersusSubstitute.html a newer version of this problem]</p>
  +
  +
The aim of this page is to demonstrate the difference between <code>eval()</code> and <code>substitute</code>.
   
 
Note:[[PGLabs]] is an efficient way to check code.
 
Note:[[PGLabs]] is an efficient way to check code.
Line 10: Line 14:
   
 
$f = Compute(sqrt(3x + 1);
 
$f = Compute(sqrt(3x + 1);
$fx = $f->eval(x=>"3");
+
$fx = $f->substitute(x=>"3");
 
displays (3.16228)
 
displays (3.16228)
   
 
The correct answer is a formula (hence the parenthesis)
 
The correct answer is a formula (hence the parenthesis)
   
One of the biggest differences between <code> eval() </code> and <code> substitute </code> is when they are used in conjunction with flags such as <code> reduceConstants </code> and <code> reduceConstantFunctions </code>, which is described in more detail at:[[FormattingCorrectAnswers]]
+
One of the biggest differences between <code>eval()</code> and <code>substitute</code> is when they are used in conjunction with flags such as <code>reduceConstants</code> and <code>reduceConstantFunctions</code>, which is described in more detail at:[[FormattingCorrectAnswers:_NumbersAndFormulas]]
  +
  +
[[Category:Authors]]

Latest revision as of 08:32, 28 June 2023

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