Attention
This version of tutorial covers a somwhat older version of EasyCalc. I do
not have currently time to update it to the latest version. Any
contributions are welcome.
Overview
EasyCalc is a graphing, scientific calculator for Palm's and PalmPilots. Of
course it has all the capabilities and ease-of-use of the built-in "4-Banger"
that comes with the PalmPilot, but also includes trigonometric functions,
financial functions, complex numbers and graphing. In addition, you can
define your own
functions and variables with names up to 10 characters long and nesting up
to ten levels deep. Values may range between 1E-100 and 1E250.
Other features:
- Multiple screens easily categorize functions
- "ANS" button
- Scrollable history
- Scrolling list for functions
- Zoom-in and Zoom-out for graphs
- Plot multiple functions at a time
- User definable axis
- Radian or Degree mode
- Hex, Decimal, Float, Binary or Octal computing modes
- Normal, Scientific or Engineering output modes
- User selectable precision to 15 digits
- Automatic match for brackets
- Full clipboard support
- Complex numbers
- and many more coming in future versions..
Basic calculations
Let's start with something very simple. After starting a calculator, you
should see something like this:

And now let's compute a very simple thing: 3+3=6. Type in '3+3' using
either the buttons on the screen or graffiti and press 'EXE' or write the
newline graffiti. '6' will appear in the result area. And now to something
more complicated - let's compute '3*sin(pi/2)'. First change to the
'Scientific' screen - tap the 'S' in the top right corner or use menu.

Now you can easily write in '3*sin(pi/2)' and press 'Exe'. You can
change between the screens, if you don't like graffiti.
You can see somewhat
shorter expression on the screenshot - EasyCalc doesn't require closing
brackets ('sin(pi+1' is interpreted as 'sin(pi+1)'), and supports shortened
writing of multiplication - like '3pi' or '6e'. Before proceeding - try
tapping the small black arrow to the right of the input field. What you see
is history list, currently holding 15 last executed expressions. You may
wonder, what is the Ans button for? It's for the last computed
result. And the ans variable gets inserted automatically whenever you
are on the beginning of the line and press some 'operation' button. Try
writing sin(pi) and press Exe. Now tap a button +. On
the screen appears ans+. Now if you complete the expression (e.g.
with 1) end press Exe, you have effectively computed
sin(pi)+1.
Goniometric calculations

There are some comfort functions for working with degrees and radians. They
are located in a small menu, that appears when you click the 'M' on the
right side of the results field. It features - among others - the '->Degree'
and '->Radian' function, that changes the ouptut to a more readable form. Of
course you can try the 'Copy' option and Paste it into the input field - and
it works. The degrees are written somewhat easier this way:
. Of course only if you learn, how to write these special
characters (bold dot and degree). The Degree/Radian/Grad can be switched in
Preferences.
Preferences

- Radian/Degree/Grad mode change - this change applies to all functions.
- Floating/Decimal/Binary/Octal/HexaDec - this setting applies to input
recognition
and displaying functions, but doesn't change computing behaviour. This means,
that expression '3.14159' isn't recognised in non-floating modes,
because '3.141..' is floating point number, while 'pi' outputs correct
result regardless of mode, because 'pi' is a floating point constant.
- Strip zeros - output '3.100' or '3.1'
- Match ()'s - if on, than tapping on the function button inserts
automatically closing bracket and moves cursor position between the brackets
- Force complex nums - because complex operations are slow and usually
less precise, all computation are done as 'real' by default. This doesn't
confine you in the real sphere at all, because the calculator automatically
switches to complex operations whenever it encounters complex numbers, but
doesn't do them by default. If this is off, then sqrt(-2) will give you an
error, but sqrt(-2+0j) gives a complex result - because of the automatic
fallback to complex numbers. When this switch is on, sqrt(-2) will be
automatically return complex result.
- Reduce precision - personally I don't like things like sin(pi)=1E-15.
This is unfortunately the way most computers work and I can't do much about
it, it is the limitation of floating point. If this is checked, EasyCalc
displayes numbers smaller then 1E-15 as zero (but you can still compute
with them). If you uncheck this option, you can see numbers up to 1E-100.
Integer calculations
Tap the 'I' on the top and change to the 'Integer' screen:

EasyCalc works with 32-bit unsigned integers and supports simple binary
operations - AND(&), OR(|), ShiftLeft(<) and ShiftRitght(>). It
also supports base conversions. Write in some number and press the 'Exe'
key and the number will appear in the Result area. Now tap on the base you
want to convert to and the number will reconvert. If you convert from
'Float' to some integer base, the number gets rounded. DO NOT FORGET TO
CHECK THE MODE BACK TO FLOATING, you can be surprised to see BAD results if
you do not (3/2 in integer is not the same as 3/2 in floating point). BTW:
If the result is longer than the result field, a small arrow appears on the
right and you can scroll the field by touching the field and moving
with the pen left/right.
Complex calculations

EasyCalc supports all ordinary computations with complex numbers (please,
write me if you find some operation EasyCalc doesn't support, it is possible
I forgot some of them). The 'i' works exactly as expected. On the second
figure you see the result of number conversion in the 'M' menu.
Variables and functions
EasyCalc supports unlimited number of variables and functions.
Variable (or function) name consists of lower-case letters and
can be up to 10 characters long. Variables and functions share the same
address space, so if you define a variable with same name as function, the
function will be overwritten. Variable is defined simply by executing
'name=value', function is defined by executing 'name()="code"'. The 'name'
cannot be 'pi', 'e' and 'x' as those are reserved identifiers. Parameter of
a function is always 'x'. And now some examples: writing a=31 and
tapping the Exe key will assign a number
31 into variable a. From now you can treat the a variable like
other constants. If you now write a=3*a, variable a will contain
a number 93.
Let's try to define a simple function now: write f()="x^2" and press
Exe. From now you can use this a function - f(3) will return a
result of 9. For working with variables is very helpful a
Definition screen (you can tap the D letter on top of your
screen). You can easily delete/modify all defined functions and variables.
Financial calculator
Introduction to funancial calculations
Basic financial calculation can be characterised this way:
You have some money in the bank (PV, present value). X-times a year(P/YR,
payments per year) you deposit some money (PMT, payment) into you bank
account. Bank adds every year some amount of money, it's a percentage of
the amount that is currently on your account and the percentage is called
interest (I).
After a given number of years (N, Number of deposits) you decide to withdraw
your money from bank. What you will get from bank is a future value(FV). End
of introduction.

This is a basic implementation of financial calculator. You work with 6
different variables:
I - interest. Note: from the 1.01 version this should be a per-cent number,
e.g. 12% interest should be written as i=12 and not as i=0.12,
like in earlier versions.
N - number of years
PV - present value
PMT - payment (annuity) every year
FV - future value
P/R - payments per year
and the Begin/End buttons, that affect when is the payment done - in the
beginning of the year or at the end (usually at the end).
Now you can try defining 5 variables and by tapping on the name of the 6th
it gets computed. Let's try an example:
By tapping on the buttons 'Undedfined' near names of corresponding variables
enter values for every variable. Now most of those
'Undefined' messages should have disappeared. If you tap on the name of the
variable you wanted to compute, a notice 'Please wait' will appear in the
middle of the screen
indicating, that the calculator is computing, and you'll be able to
read the result as soon as the sign disappears.
Graphs
EasyCalc can display functions on the graph. Define a function 'f()="x^2"'
and change to the 'G' screen and tap on the 'Add' button.

If you tap on the graph, you can see a cross following graph of the selected
function and you can read values of that function. Do you want to zoom in?
Tap the '+' button and draw a rectangle on the graph area. You can also
change graph limits in Preferences (Menu-Graph-Preferences).
Other functions
EasyCalc can guess a number - suppose you just computed 'acos(0)' and you
don't know, what the result means. Use the M->GuessIt and it will tell
you, that you just got 'pi/2'.
There are some undocumented functions:
- fact() - computes factorial
- int() - converts floating number to integer
- real() - converts integer number to floating point
- ncr(),npr() - combinations and permutations, these functions accept
2 parameters, e.g. ncr(3:1)
- fzero - compute a 'zero' of a function in a given interval. This
function takes 3 parameters - minimum, maximum, function. E.g:
fzero(0,4,f()), where f()="x^2-4" will return '2' as a result. You
can write it shorthand as fzero(0:4:"x^2").
Contact, Newest information etc.
It might be useful to read documents you get with EasyCalc, especially
'INSTALL'.
EasyCalc was written by Ondrej Palkovsky,
ondrap@penguin.cz. Newest
informations are available on
http://www.penguin.cz/~ondrap.
It would be fine, if someone did language correction of this tutorial, as
English isn't my mother language.