I've used TI's CAS system quite a bit, and I have a nice pattern for evaluating expressions without setting and then later clearing a variable.

For example, on my TI-89, I can do the following:

$-\frac{1}{3}x^3 + 3x^2 + 7x$ when x = 3

This would output a numeric (or exact) answer, evaluating the expression as if x had been assigned 3, but still leaving x as unassigned.

Can I do the same thing or something similar in Mathematica?


Generally, I use something like -1/3x^3+3x^2+7x /. x->3. For most simple equations, I find it most convenient to use /. (aka ReplaceAll) to do this sort of thing. One reason I like to use /. is because it lets me take a few steps to interactively build out a formula first.

For instance, here I'm trying to evaluate $\frac{d}{dx} (-\frac{1}{12}x^4+x^3+\frac{7}{2}x^2)$ at $x=3$:

In[1]:= -x^4/12+x^3+7/2x^2

           2         4
        7 x     3   x
Out[1]= ---- + x  - --
         2          12

In[2]:= D[%,x]

                 2   x
Out[2]= 7 x + 3 x  - --

In[3]:= % /. x->3

Out[3]= 39

Depending on what you're doing, it may be easiest to create a function instead. For instance, if you define f[x_] = -1/3x^3+3x^2+7x, you can evaluate f[3] etc. as needed.

You also can simply define y = -1/3x^3+3x^2+7, and then evaluate y /. x->3.


Not the answer you're looking for? Browse other questions tagged or ask your own question.