28298 |
The @kbd{s u} (@code{calc-unstore}) command returns a variable to the |
The @kbd{s u} (@code{calc-unstore}) command returns a variable to the |
28299 |
void state. |
void state. |
28300 |
|
|
28301 |
|
@kindex s c |
28302 |
|
@pindex calc-copy-variable |
28303 |
|
The @kbd{s c} (@code{calc-copy-variable}) command copies the stored |
28304 |
|
value of one variable to another. One way it differs from a simple |
28305 |
|
@kbd{s r} followed by an @kbd{s t} (aside from saving keystrokes) is |
28306 |
|
that the value never goes on the stack and thus is never rounded, |
28307 |
|
evaluated, or simplified in any way; it is not even rounded down to the |
28308 |
|
current precision. |
28309 |
|
|
28310 |
The only variables with predefined values are the ``special constants'' |
The only variables with predefined values are the ``special constants'' |
28311 |
@code{pi}, @code{e}, @code{i}, @code{phi}, and @code{gamma}. You are free |
@code{pi}, @code{e}, @code{i}, @code{phi}, and @code{gamma}. You are free |
28312 |
to unstore these variables or to store new values into them if you like, |
to unstore these variables or to store new values into them if you like, |
28316 |
special variables @code{inf}, @code{uinf}, and @code{nan} (which are |
special variables @code{inf}, @code{uinf}, and @code{nan} (which are |
28317 |
normally void). |
normally void). |
28318 |
|
|
28319 |
Note that @code{pi} doesn't actually have 3.14159265359 stored |
Note that @code{pi} doesn't actually have 3.14159265359 stored in it, |
28320 |
in it, but rather a special magic value that evaluates to @cpi{} |
but rather a special magic value that evaluates to @cpi{} at the current |
28321 |
at the current precision. Likewise @code{e}, @code{i}, and |
precision. Likewise @code{e}, @code{i}, and @code{phi} evaluate |
28322 |
@code{phi} evaluate according to the current precision or polar mode. |
according to the current precision or polar mode. If you recall a value |
28323 |
If you recall a value from @code{pi} and store it back, this magic |
from @code{pi} and store it back, this magic property will be lost. The |
28324 |
property will be lost. |
magic property is preserved, however, when a variable is copied with |
28325 |
|
@kbd{s c}. |
28326 |
@kindex s c |
|
28327 |
@pindex calc-copy-variable |
@kindex s k |
28328 |
The @kbd{s c} (@code{calc-copy-variable}) command copies the stored |
@pindex calc-copy-special-constant |
28329 |
value of one variable to another. It differs from a simple @kbd{s r} |
If one of the ``special constants'' is redefined (or undefined) so that |
28330 |
followed by an @kbd{s t} in two important ways. First, the value never |
it no longer has its magic property, the property can be restored with |
28331 |
goes on the stack and thus is never rounded, evaluated, or simplified |
@kbd{s k} (@code{calc-copy-special-constant}). This command will prompt |
28332 |
in any way; it is not even rounded down to the current precision. |
for a special constant and a variable to store it in, and so a special |
28333 |
Second, the ``magic'' contents of a variable like @code{e} can |
constant can be stored in any variable. Here, the special constant that |
28334 |
be copied into another variable with this command, perhaps because |
you enter doesn't depend on the value of the corresponding variable; |
28335 |
you need to unstore @code{e} right now but you wish to put it |
@code{pi} will represent 3.14159@dots{} regardless of what is currently |
28336 |
back when you're done. The @kbd{s c} command is the only way to |
stored in the Calc variable @code{pi}. If one of the other special |
28337 |
manipulate these magic values intact. |
variables, @code{inf}, @code{uinf} or @code{nan}, is given a value, its |
28338 |
|
original behavior can be restored by voiding it with @kbd{s u}. |
28339 |
|
|
28340 |
@node Recalling Variables, Operations on Variables, Storing Variables, Store and Recall |
@node Recalling Variables, Operations on Variables, Storing Variables, Store and Recall |
28341 |
@section Recalling Variables |
@section Recalling Variables |
35625 |
@r{ @: s d @:var, decl @: @:calc-declare-variable@:} |
@r{ @: s d @:var, decl @: @:calc-declare-variable@:} |
35626 |
@r{ @: s e @:var, editing @: 29,30 @:calc-edit-variable@:} |
@r{ @: s e @:var, editing @: 29,30 @:calc-edit-variable@:} |
35627 |
@r{ @: s i @:buffer @: @:calc-insert-variables@:} |
@r{ @: s i @:buffer @: @:calc-insert-variables@:} |
35628 |
|
@r{ @: s k @:const, var @: 29 @:calc-copy-special-constant@:} |
35629 |
@r{ a b@: s l @:var @: 29 @:@:a (letting var=b)} |
@r{ a b@: s l @:var @: 29 @:@:a (letting var=b)} |
35630 |
@r{ a ...@: s m @:op, var @: 22,29 @:calc-store-map@:} |
@r{ a ...@: s m @:op, var @: 22,29 @:calc-store-map@:} |
35631 |
@r{ @: s n @:var @: 29,47 @:calc-store-neg@: (v/-1)} |
@r{ @: s n @:var @: 29,47 @:calc-store-neg@: (v/-1)} |