HP (Hewlett Packard) HP 35S Scientific Calculator 35s User Manual |
HP 35s scientific calculator
user's guide
H
HP part number F2215AA-90001
Edition 1
Contents
1. Getting Started............................................................1-1
Contents
1
Contents
3
7. Solving Equations........................................................7-1
8. Integrating Equations ..................................................8-1
9. Operations with Complex Numbers .............................9-1
10.Vector Arithmetic ......................................................10-1
Contents
5
11.Base Conversions and Arithmetic and Logic................11-1
12.Statistical Operations ................................................12-1
6
Contents
15.Solving and Integrating Programs..............................15-1
17.Miscellaneous Programs and Equations......................17-1
A. Support, Batteries, and Service ................................... A-1
Service...................................................................................A-8
Contents
9
1
Getting Started
Watch for this symbol in the margin. It identifies examples or
keystrokes that are shown in RPN mode and must be
performed differently in ALG mode.
Appendix C explains how to use your calculator in ALG mode.
v
Important Preliminaries
Turning the Calculator On and Off
To turn the calculator on, press . ON is printed on the bottom of the key.
To turn the calculator off, press . That is, press and release the shift
key, then press (which has OFF printed in yellow above it). Since the calculator
has Continuous Memory, turning it off does not affect any information you've stored.
To conserve energy, the calculator turns itself off after 10 minutes of inactivity. If you
see the low–power indicator ( ) in the display, replace the batteries as soon as
possible. See appendix A for instructions.
Adjusting Display Contrast
Display contrast depends on lighting, viewing angle, and the contrast setting. To
increase or decrease the contrast, hold down the key and press or .
1-1
Highlights of the Keyboard and Display
Shifted Keys
Each key has three functions: one printed on its face, a left–shifted function
(yellow), and a right–shifted function (blue). The shifted function names are printed
in yellow above and in blue on the bottom of each key. Press the appropriate shift
key ( or ) before pressing the key for the desired function. For example, to
turn the calculator off, press and release the shift key, then press .
1-2
Pressing or turns on the corresponding
or annunciator symbol at
the top of the display. The annunciator remains on until you press the next key. To
cancel a shift key (and turn off its annunciator), press the same shift key again.
Alpha Keys
Left-shifted
function
Right-shifted
function
Letter for alphabetic
key
Most keys display a letter in their bottom right corner, as shown above. Whenever
you need to type a letter (for example, a variable or a program label), the A..Z
annunciator appears in the display, indicating that the alpha keys are
“active”.
Variables are covered in chapter 3; labels are covered in chapter 13.
Cursor Keys
Each of the four cursor direction keys is marked with an arrow. In this text we will
use the graphics Õ, Ö, × and Øto refer to these keys.
1-3
Backspacing and Clearing
Among the first things you need to know are how to clear an entry, correct a
number, and clear the entire display to start over.
Keys for Clearing
Key
Description
Backspace.
If an expression is in the process of being entered, erases the
character to the left of the entry cursor ( _ ). Otherwise, with a
completed expression or the result of a calculation in line 2,
replaces that result with a zero. also clears error messages
and exits menus. behaves similarly when the calculator is in
program-entry and equation-entry modes, as discussed below:
ꢀ
Equation–entry mode:
If an equation is in the process of being entered or edited,
erases the character immediately to the left of the insert
cursor; otherwise, if the equation has been entered (no insert
cursor present), deletes the entire equation.
ꢀ
Program-entry mode:
If a program line is in the process of being entered or
edited, erases the character to the left of the insert
cursor; otherwise, if the program line has been entered,
deletes the entire line.
Clear or Cancel.
Clears the displayed number to zero or cancels the current
situation (such as a menu, a message, a prompt, a catalog, or
Equation–entry or Program–entry mode).
1-4
Keys for Clearing (continued)
Description
Key
The CLEAR menu ( )
contains options for clearing x (the number in the X-register), all
direct variables, all of memory, all statistical data, all stacks and
indirect variables.
If you press (), a new menu is
displayed so you can verify your decision before erasing
everything in memory.
During program entry, is replaced by . If you press
(), a new menu is displayed, so you
can verify your decision before erasing all your programs.
During equation entry, is replaced by . If you press
(), the menu is displayed, so you can
verify your decision before erasing all your equations.
When you select (), the command is pasted into the
command line with three placeholders. You must enter a 3-digit
number in the placeholder blanks. Then all the indirect variables
whose addresses are greater than the address entered are
erased. For example: CLVAR056 erases all indirect variables
whose address is greater than 56.
1-5
Using Menus
There is a lot more power to the HP 35s than what you see on the keyboard. This is
because 16 of the keys are menu keys. There are 16 menus in all, which provide
many more functions, or more options for more functions.
HP 35s Menus
Menu
Name
Menu
Description
Chapter
Numeric Functions
L.R.
12
12
ˆ
ˆ
Linear regression: curve fitting and linear estimation.
y
x ,
Arithmetic mean of statistical x– and y–values;
weighted mean of statistical x–values.
σ σ
Sample standard deviation, population standard
deviation.
s,σ
12
4
Menu to access the values of 41 physics constants—
refer to
CONST
"Physics constants" on page 4–8.
SUMS
BASE
12
12
Statistical data summations.
Base conversions (decimal, hexadecimal, octal, and
binary).
INTG
4,C
11
÷
Sign value, integer division, remainder from division,
greatest integer, fractional part, integer part
LOGIC
Logic operators
1-6
Programming Instructions
FLAGS
x?y
14
14
14
Functions to set, clear, and test flags.
≠ ≤ < > ≥ =
Comparison tests of the X–and Y–registers.
≠ ≤ < > ≥ =
x?0
Comparison tests of the X–register and zero.
Other functions
MEM
1, 3, 12
Memory status (bytes of memory available); catalog
of variables; catalog of programs (program labels).
MODE
4, 1
1
Angular modes and operation mode
DISPLAY
Fixed, scientific, engineering, full floating point
numerical display formats; radix symbol options (. or
,); complex number display format (in RPN mode,
only xiy and rθa are available)
Rꢀ R ꢁ
C
Functions to review the stack in ALG mode –X–, Y–,
Z–, T–registers
Functions to clear different portions of memory—refer
CLEAR
1, 3,
6, 12
to
in the table on page 1–5.
To use a menu function:
1. Press a menu key to display a set of menu items.
2. Press Õ Ö × Øto move the underline to the item you want to select.
3. Press while the item is underlined.
With numbered menu items, you can either press while the item is
underlined, or just enter the number of the item.
1-7
Some menus, like the CONST and SUMS, have more than one page. Entering these
menus turns on the ꢂ or ꢃ annunciator. In these menus, use the Õand Ö
cursor keys to navigate to an item on the current menu page; use the Øand ×
keys to access the next and previous pages in the menu.
Example:
In this example, we use the DISPLAY menu to fix the display of numbers to 4 decimal
places and then compute 6÷7. The example closes using the DISPLAY menu to return
to full floating point display of numbers.
Keys:
Display:
Description:
Initial display
Enter the DISPLAY menu
8
or
The Fix command is pasted to line 2
Fix to 4 decimal places
Perform the division
Return to full precision
8
Menus help you execute dozens of functions by guiding you to them. You don’t have
to remember the names of all the functions built into the calculator nor search
through the functions printed on the keyboard.
Exiting Menus
Whenever you execute a menu function, the menu automatically disappears, as
in the above example. If you want to leave a menu without executing a function, you
have three options:
1-8
ꢀ
ꢀ
Pressing backs out of the 2–level CLEAR or MEM menu, one level at a
time. Refer to in the table on page 1–5.
Pressing or cancels any other menu.
Keys: Display:
_
ꢃ
8
_
or
ꢀ
Pressing another menu key replaces the old menu with the new one.
Keys:
Display:
_
8
ꢃ
ꢃ
RPN and ALG Modes
The calculator can be set to perform arithmetic operations in either RPN (Reverse
Polish Notation) or ALG (Algebraic) mode.
In Reverse Polish Notation (RPN) mode, the intermediate results of calculations are
stored automatically; hence, you do not have to use parentheses.
In Algebraic mode (ALG), you perform arithmetic operations using the standard
order of operations.
To select RPN mode:
Press 9{() to set the calculator to RPN mode. When the calculator
is in RPN mode, the RPN annunciator is on.
1-9
To select ALG mode:
Press 9{() to set the calculator to ALG mode. When the calculator
is in ALG mode, the ALG annunciator is on.
Example:
Suppose you want to calculate 1 + 2 = 3.
In RPN mode, you enter the first number, press the key, enter the second
number, and finally press the arithmetic operator key: .
In ALG mode, you enter the first number, press , enter the second number, and
finally press the key.
RPN mode
ALG mode
1 2
1 2
In ALG mode, the results and the calculations are displayed. In RPN mode, only the
results are displayed, not the calculations.
You can choose either ALG (Algebraic) or RPN (Reverse Polish
Notation) mode for your calculations. Throughout the manual, the
Note
“v“ in the margin indicates that the examples or keystrokes in RPN
mode must be performed differently in ALG mode. Appendix C
explains how to use your calculator in ALG mode.
1-10 Getting Started
Undo key
The Undo Key
The operation of the Undo key depends on the calculator context, but serves largely
to recover from the deletion of an entry rather than to undo any arbitrary operation.
See The Last X Register in Chapter 2 for details on recalling the entry in line 2 of the
display after a numeric function is executed. Press : immediately after
using or to recover:
ꢀ
ꢀ
ꢀ
an entry that you deleted
an equation deleted while in equation mode
a program line deleted while in program mode
In addition, you can use Undo to recover the value of a register just cleared using
the CLEAR menu. The Undo operation must immediately follow the delete operation;
any intervening operations will keep Undo from retrieving the deleted object. In
addition to retrieving an entire entry after its deletion, Undo can also be used while
editing an entry. Press : while editing to recover:
ꢀ
ꢀ
ꢀ
a digit in an expression that you just deleted using
an expression you were editing but cleared using
a character in an equation or program that you just deleted using (while
in equation or program mode)
Please note also that the Undo operation is limited by the amount of available
memory.
The Display and Annunciators
First Line
Second Line
The display comprises two lines and annunciators.
Entries with more than 14 characters will scroll to the left. During input, the entry is
displayed in the first line in ALG mode and the second line in RPN mode. Every
calculation is displayed in up to 14 digits, including an sign (exponent), and
exponent value up to three digits.
Annunciators
The symbols on the display, shown in the above figure, are called annunciators.
Each one has a special significance when it appears in the display.
1-12 Getting Started
HP 35s Annunciators
Meaning
Annunciator
Chapter
The " (Busy)" annunciator appears while
an operation, equation, or program is
executing.
When in Fraction–display mode (press
ꢄ
ꢅ
5
), only one of the "ꢄ" or "ꢅ" halves
of the "ꢄꢅ"' annunciator will be turned on
to indicate whether the displayed numerator
is slightly less than or slightly greater than its
true value. If neither part of "ꢄꢅ" is on, the
exact value of the fraction is being
displayed.
Left shift is active.
1
1
Right shift is active.
RPN
Reverse Polish Notation mode is active.
Algebraic mode is active.
1, 2
1, C
13
6
ALG
PRGM
EQN
Program–entry is active.
Equation–entry mode is active, or the
calculator is evaluating an expression or
executing an equation.
0 1 2 3 4
RAD or GRAD
HEX OCT BIN
HYP
Indicates which flags are set (flags 5
through 11 have no annunciator).
Radians or Grad angular mode is set. DEG
mode (default) has no annunciator.
Indicates the active number base. DEC
(base 10, default) has no annunciator.
Hyperbolic function is active.
14
4
11
4, C
HP 35s Annunciators (continued)
Meaning
Annunciator
Chapter
There are more characters to the left or right in
the display of the entry in line 1 or line 2. Both
of these annunciators may appear
1, 6
,ꢆ
simultaneously, indicating that there are
characters to the left and right in the display of
an entry. Entries in line 1 with missing
characters will show an ellipsis (…) to indicate
missing characters. In RPN mode, use the Õ
and Ökeys to scroll through an entry and
see the leading and trailing characters. In ALG
mode, use Õand Öto see the
rest of the characters.
1, 6, 13
The Øand ×keys are active for stepping
through an equation list, a catalog of
variables, lines of a program, menu pages, or
programs in the program catalog.
ꢂ,ꢃ
A..Z
The alphabetic keys are active.
3
1
Attention! Indicates a special condition or an
error.
Battery power is low.
A
1-14 Getting Started
Keying in Numbers
The minimum and maximum values that the calculator can handle are
499
9.99999999999 . If the result of a calculation is beyond this range, the error
message “” appears momentarily along with the annunciator. The
overflow message is then replaced with the value closest to the overflow boundary
that the calculator can display. The smallest numbers the calculator can distinguish
-499
from zero are 10
. If you enter a number between these values, the calculator
will display 0 upon entry. Likewise, if the result of calculation lies between these two
values, the result will be displayed as zero. Entering numbers beyond the maximum
range above will result in an error message “ ”; clearing the error
message returns you to the previous entry for correction.
Making Numbers Negative
The key changes the sign of a number.
ꢀ
ꢀ
ꢀ
To key in a negative number, type the number, then press ,
In ALG mode, you may press key before or after typing the number.
To change the sign of a number that was entered previously, just press .
(If the number has an exponent, affects only the mantissa — the non–
exponent part of the number.)
Exponents of Ten
Exponents in the Display
-5
Numbers with explicit powers of ten (such as 4.2x10 ) are displayed with an E
-5
preceding the exponent of 10. Thus 4.2x10 is entered and displayed as 4.2E-5.
A number whose magnitude is too large or too small for the display format will
automatically be displayed in exponential form.
For example, in FIX 4 format for four decimal places, observe the effect of the
following keystrokes:
Keys:
Display:
_
Description:
Shows number being entered.
Rounds number to fit the display
format.
Automatically uses scientific notation
because otherwise no significant digits
would appear.
Keying in Powers of Ten
The key is used to enter powers of ten quickly. For example, instead of entering
one million as 1000000 you can simply enter . The following example
illustrates the process as well as how the calculator displays the result.
Example:
-34
Suppose you want to enter Planck’s constant: 6.6261×10
Keys:
Display:
Description
Enter the mantissa
_
x
Equivalent to ×10
_
z
Enter the exponent
For a power of ten without a multiplier, as in the example of one million above,
press the key followed by the desired exponent of ten.
1-16 Getting Started
Other Exponent Functions
To calculate an exponent of ten (the base 10 antilogarithm), use . To
calculate the result of any number raised to a power (exponentiation), use (see
chapter 4).
Understanding Entry Cursor
As you key in a number, the cursor (_) appears and blinks in the display. The cursor
shows you where the next digit will go; it therefore indicates that the number is not
complete.
Keys:
Display:
_
Description:
Entry not terminated: the number is not
complete.
If you execute a function to calculate a result, the cursor disappears because the
number is complete —entry has been terminated.
Entry is terminated.
Pressing terminates entry. To separate two numbers, key in the first
number, press to terminate entry, and then key in the second number
A completed number.
Another completed number.
If entry is not terminated (if the cursor is present), backspaces to erase the last
digit. If entry is terminated (no cursor), acts like and clears the entire
number. Try it!
Range of Numbers and OVERFLOW
499
The smallest number available on the calculator is –9.99999999999 × 10 ,while
499
the largest number is 9.99999999999 × 10
.
ꢀ
If a calculation produces a result that exceeds the largest possible number, –
499
499
is returned, and
9.99999999999 × 10
or 9.99999999999 × 10
the warning message appears.
Performing Arithmetic Calculations
The HP 35s can operate in either RPN mode or in Algebraic mode (ALG). These
modes affect how expressions are entered. The following sections illustrate the entry
differences for single argument (or unary) and two argument (or binary) operations.
Single Argument or Unary Operations
Some of the numerical operations of the HP 35s require a single number for input,
such as , , &and k. These single argument operations are entered
differently, depending on whether the calculator is in RPN or ALG mode. In RPN
mode, the number is entered first and then the operation is applied. If the
key is pressed after the number is entered, then the number appears in line 1 and
the result is shown in line 2. Otherwise, just the result is displayed in line 2 and line
1 is unchanged. In ALG mode, the operator is pressed first and the display shows
the function, followed by a set of parentheses. The number is entered between the
parentheses and then the key is pressed. The expression is displayed in line
1 and the result is shown in line 2. The following examples illustrate the differences.
1-18 Getting Started
Example:
Calculate 3.4 , first in RPN mode and then in ALG mode.
2
Keys:
Display:
Description:
Enter RPN mode (if necessary)
Enter the number
9()
Press the square operator
Switch to ALG mode
9()
Enter the square operation
Insert the number between the
parentheses
Press the Enter key to see the result
In the example, the square operator is shown on the key as but displays as
SQ(). There are several single argument operators that display differently in ALG
mode than they appear on the keyboard (and differently than they appear in RPN
mode as well). These operations are listed in the table below.
Key
In RPN,RPN Program
In ALG, Equation, ALG Program
SQ()
2
X
?
#
SQRT()
EXP()
√ x
x
e
x
!
ALOG()
INV()
10
1/x
Two Argument or Binary Operations
Two argument operations, such as , , ), and x, are also entered
differently depending on the mode though the differences are similar to the case for
single argument operators. In RPN mode, the first number is entered, then the
second number is placed in the x-register and the two argument operation is
invoked. In ALG mode, there are two cases, one using traditional infix notation and
another taking a more function-oriented approach. The following examples illustrate
the differences.
Example
Calculate 2+3 and C , first in RPN mode and then in ALG mode.
6
4
Keys:
Display:
Description:
Switch to RPN mode (if necessary)
Enter 2, then place 3 in the x-register.
9()
Note the flashing cursor after the 3;
don’t press Enter!
Press the addition key to see the result.
_
Enter 6, then place 4 in the x-register.
_
Press the combinations key to see the
x
result.
Switch to ALG mode
9()
Expression and result are both shown.
Enter the combination function.
Enter the 6, then move the edit cursor
past the comma and enter the 4.
Press Enter to see the result.
x
Õ
In ALG mode, the infix operators are , ,, , and . The other two
argument operations use function notation of the form f(x,y), where x and y are the
first and second operands in order. In RPN mode, the operands for two argument
operations are entered in the order Y, then X on the stack. That is, y is the value in
the y-register and x is the value in the x-register.
th
3
The x root of y (') is the exception to this rule. For example, to calculate 8 in
RPN mode, press '. In ALG mode, the equivalent
operation is keyed in as 'Õ.
As with the single argument operations, some of the two argument operations
display differently in RPN mode than in ALG mode. These differences are
summarized in the table below.
1-20 Getting Started
Key
In RPN, RPN Program
In ALG, Equation, ALG Program
x
^
y
x √ y
INT÷
XROOT(, )
IDIV(, )
For commutative operations such as and , the order of the operands does
not affect the calculated result. If you mistakenly enter the operand for a
noncommutative two argument operation in the wrong order in RPN mode, simply
press the key to exchange the contents in the x- and y-registers. This is
explained in detail in Chapter 2 (see the section entitled Exchanging the X- and Y-
Registers in the Stack).
Controlling the Display Format
All numbers are stored with 12-digit precision; however, you may control the
number of digits used in the display of numbers via the options in the Display menu.
Press 8 to access this menu. The first four options (FIX, SCI, ENG, and
ALL) control the number of digits in the display of numbers. During some
complicated internal calculations, the calculator uses 15–digit precision for
intermediate results. The displayed number is rounded according to the display
format.
Fixed–Decimal Format ()
FIX format displays a number with up to 11 decimal places (11 digits to the right of
the "" or "" radix mark) if they fit. After the prompt _, type in the number of
decimal places to be displayed. For 10 or 11 places, press or .
For example, in the number , the "7", "0", "8", and "9" are the
decimal digits you see when the calculator is set to FIX 4 display mode.
11
-11
Any number that is too large (10 ) or too small (10 ) to display in the current
decimal–place setting will automatically be displayed in scientific format.
Scientific Format ()
SCI format displays a number in scientific notation (one digit before the "" or ""
radix mark) with up to 11 decimal places and up to three digits in the exponent.
After the prompt, _, type in the number of decimal places to be displayed. For
10 or 11 places, press or . (The mantissa part of the number will
always be less than 10.)
For example, in the number , the "2", "3", "4", and "6" are the
decimal digits you see when the calculator is set to SCI 4 display mode. The "5"
5
following the "E" is the exponent of 10: 1.2346 × 10 .
If you enter or calculate a number that has more than 12 digits, the additional
precision is not maintained.
Engineering Format ()
ENG format displays a number in a manner similar to scientific notation, except that
the exponent is a multiple of three (there can be up to three digits before the "" or
"" radix mark). This format is most useful for scientific and engineering calculations
3
that use units specified in multiples of 10 (such as micro–, milli–, and kilo–units.)
After the prompt, _, type in the number of digits you want after the first
significant digit. For 10 or 11 places, press or .
For example, in the number , the "2", "3", "4", and "6" are the
significant digits after the first significant digit you see when the calculator is
set to ENG 4 display mode. The "3" following the "" is the (multiple of 3)
3
exponent of 10: 123.46 x 10 .,
Pressing @ or 2 will cause the exponent display for the
number being displayed to change in multiples of 3, with the mantissa adjusted
accordingly.
1-22 Getting Started
Example:
This example illustrates the behavior of the Engineering format using the number
12.346E4. It also shows the use of the @ and 2 functions.
This example uses RPN mode.
Keys:
Display:
_
Description:
Choose Engineering format
8(
)
Enter 4 (for 4 significant digits after the
1 )
st
Enter 12.346E4
}
@ or
2
@
Increases the exponent by 3
Decreases the exponent by 3
2
ALL Format ()
The All format is the default format, displaying numbers with up to 12 digit
precision. If all the digits don't fit in the display, the number is automatically
displayed in scientific format.
Periods and Commas in Numbers () ()
The HP 35s uses both periods and commas to make numbers easier to read. You
can select either the period or the comma as the decimal point (radix). In addition,
you can choose whether or not to separate digits into groups of three using
thousand separators. The following example illustrates the options.
Example
Enter the number 12,345,678.90 and change the decimal point to the comma.
Then choose to have no thousand separator. Finally, return to the default settings.
This example uses RPN mode.
Keys:
Display:
Description:
Select full floating point precision
(ALL format)
8(
)
The default format uses the comma
as the thousand separator and the
period as the radix.
Change to use the comma for the
radix. Note that the thousand
separator automatically changes to
the period.
8()
Change to having no comma
separator.
8(
)
Return to the default format.
8()
8(
)
Complex number display format ( , , )
Complex numbers can be displayed in a number of formats: , , and
, although is only available in ALG mode. In the example below, the
complex number 3+4i is displayed in all three ways.
1-24 Getting Started
Example
Display the complex number 3+4i in each of the different formats.
Keys:
Display:
Description:
Enable ALG mode
9()
6
Enter the complex number. It displays
as 3i4, the default format.
Change to x+yi format.
8
( )
8
() or
8×
×Õ
Change to rθ a format. The radius is
5 and the angle is approximately
53.13°.
θ
SHOWing Full 12–Digit Precision
Changing the number of displayed decimal places affects what you see, but it does
not affect the internal representation of numbers. Any number stored internally
always has 12 digits.
For example, in the number 14.8745632019, you see only "14.8746" when the
display mode is set to FIX 4, but the last six digits ("632019") are present internally
in the calculator.
To temporarily display a number in full precision, press Î. This shows
you the mantissa (but no exponent) of the number for as long as you hold down
Î.
Keys:
Display:
Description:
Four decimal places displayed.
Scientific format: two decimal
places and an exponent.
8()
Engineering format.
8()
All significant digits; trailing
zeros dropped.
8()
Four decimal places, no exponent.
8()
Reciprocal of 58.5.
Shows full precision until you release
Î(hold)
Fractions
The HP 35s allows you to enter and operate on fractions, displaying them as either
decimals or fractions. The HP 35s displays fractions in the form a b/c, where a is an
integer and both b and c are counting numbers. In addition, b is such that 0≤b<c
and c is such that 1<c≤4095.
Entering Fractions
Fractions can be entered onto the stack at any time:
1. Key in the integer part of the number and press . (The first
separates the integer part of the number from its fractional part.)
2. Key in the fraction numerator and press again. The second
separates the numerator from the denominator.
3. Key in the denominator, then press or a function key to terminate
digit entry. The number or result is formatted according to the current
display format.
The a b/c symbol under the key is a reminder that the key is used
twice for fraction entry.
The following example illustrates the entry and display of fractions.
1-26 Getting Started
Example
Enter the mixed numeral 12 3/8 and display it in fraction and decimal forms. Then
enter ¾ and add it to 12 3/8. This example uses RPN mode.
Keys:
Display:
Description:
The decimal point is interpreted in the
normal way.
nd
_
When is pressed the 2 time, the
display switches to fraction mode.
Upon entry, the number is displayed
using the current display format.
Switch to fraction display mode.
É
Enter ¾. Note you start with
because there is no integer part (you
could type in 0 ¾).
_
Add ¾ to 12 3/8.
É
Switch back to the current display
mode.
Refer to chapter 5, "Fractions," for more information about using fractions.
Messages
The calculator responds to error conditions by displaying the annunciator.
Usually, a message will accompany the error annunciator as well.
ꢀ
To clear a message, press or ; in RPN mode, you will return to the
stack as it was before the error. In ALG mode, you will return to the last
expression with the edit cursor at the position of the error so that you can
correct it.
ꢀ
Any other key also clears the message, though the key function is not entered
If no message is displayed, but the annunciator appears, then you have pressed
an inactive or invalid key. For example, pressing will display because
the second decimal point has no meaning in this context.
All displayed messages are explained in appendix F, "Messages".
Calculator Memory
The HP 35s has 30KB of memory in which you can store any combination of data
(variables, equations, or program lines).
Checking Available Memory
Pressing displays the following menu:
Where
is the amount of used indirect variables.
is the number of bytes of memory available.
Pressing the () displays the catalog of direct variables (see "Reviewing
Variables in the VAR Catalog" in chapter 3). Pressing the () displays the
catalog of programs.
1. To enter the catalog of variables, press (); to enter the catalog of
programs, press ().
2. To review the catalogs, press Øor ×.
3. To delete a variable or a program, press
catalog.
while viewing it in its
4. To exit the catalog, press .
1-28 Getting Started
Clearing All of Memory
Clearing all of memory erases all numbers, equations, and programs you've
stored. It does not affect mode and format settings. (To clear settings as well as
data, see "Clearing Memory" in appendix B.)
To clear all of memory:
1. Press (). You will then see the confirmation prompt ,
which safeguards against the unintentional clearing of memory.
2. Press Ö () .
2
RPN: The Automatic
Memory Stack
This chapter explains how calculations take place in the automatic memory stack in
RPN mode. You do not need to read and understand this material to use the
calculator, but understanding the material will greatly enhance your use of the
calculator, especially when programming.
In part 2, "Programming", you will learn how the stack can help you to manipulate
and organize data for programs.
What the Stack Is
Automatic storage of intermediate results is the reason that the HP 35s easily
processes complex calculations, and does so without parentheses. The key to
automatic storage is the automatic, RPN memory stack.
HP's operating logic is based on an unambiguous, parentheses–free mathematical
logic known as "Polish Notation," developed by the Polish logician Jan Łukasiewicz
(1878–1956).
While conventional algebraic notation places the operators between the relevant
numbers or variables, Łukasiewicz's notation places them before the numbers or
variables. For optimal efficiency of the stack, we have modified that notation to
specify the operators after the numbers. Hence the term Reverse Polish Notation, or
RPN.
The stack consists of four storage locations, called registers, which are "stacked" on
top of each other. These registers — labeled X, Y, Z, and T — store and manipulate
four current numbers. The "oldest" number is stored in the T– (top) register. The stack
is the work area for calculations.
2-1
P a r t 3
P a r t 2
“ O l d e s t ” n u m b e r
T
P a r t 1 0 . 0 0 0 0
P a r t 3
P a r t 2
Z
Y
P a r t 1 0 . 0 0 0 0
P a r t 3
P a r t 2
D i s p l a y e d
D i s p l a y e d
P a r t 1 0 . 0 0 0 0
P a r t 3
P a r t 2
X
P a r t 1 0 . 0 0 0 0
The most "recent" number is in the X–register: this is the number you see in the
second line of the display.
Every register is separated into three parts:
ꢀ
ꢀ
ꢀ
A real number or a 1-D vector will occupy part 1; part 2 and part 3 will be
null in this case.
A complex number or a 2-D vector will occupy part 1 and part 2; part 3 will
be null in this case.
A 3-D vector will occupy part 1, part 2, and part 3.
In programming, the stack is used to perform calculations, to temporarily store
intermediate results, to pass stored data (variables) among programs and
subroutines, to accept input, and to deliver output.
2-2
The X and Y–Registers are in the Display
The X and Y–Registers are what you see except when a menu, a message, an
equation line ,or a program line is being displayed. You might have noticed that
several function names include an x or y.
This is no coincidence: these letters refer to the X– and Y–registers. For example,
raises ten to the power of the number in the X–register.
Clearing the X–Register
Pressing
() always clears the X–register to zero; it is also used to
program this instruction. The key, in contrast, is context–sensitive. It either clears
or cancels the current display, depending on the situation: it acts like
1() only when the X–register is displayed. also acts like
() when the X–register is displayed and digit entry is terminated
(no cursor present).
Reviewing the Stack
Rꢀ (Roll Down)
The (roll down) key lets you review the entire contents of the stack by
"rolling" the contents downward, one register at a time. You can see the numbers
as they roll through the x- and y-registers.
Suppose the stack is filled with 1, 2, 3, 4. (press
) Pressing four times rolls the numbers
all the way around and back to where they started:
1
2
3
4
4
1
2
3
3
4
1
2
2
3
4
1
1
2
3
4
T
Z
Y
X
2-3
What was in the X–register rotates into the T–register, the contents of the T–register
rotate into the Z–register, etc. Notice that only the contents of the registers are rolled
— the registers themselves maintain their positions, and only the X– and Y–register's
contents are displayed.
Rꢁ (Roll Up)
The (roll up) key has a similar function to except that it "rolls" the stack
contents upward, one register at a time.
The contents of the X–register rotate into the Y–register; what was in the T–register
rotates into the X–register, and so on.
T
Z
Y
X
1
2
3
4
2
3
4
1
3
4
1
2
4
1
2
3
1
2
3
4
Exchanging the X– and Y–Registers in the Stack
Another key that manipulates the stack contents is (x exchange y). This key
swaps the contents of the X– and Y–registers without affecting the rest of the stack.
Pressing twice restores the original order of the X– and Y–register contents.
The function is used primarily to swap the order of numbers in a calculation.
For example, one way to calculate 9 ÷ (13 × 8):
Press .
The keystrokes to calculate this expression from left–to–right are:
.
Understand that there are no more than four numbers in the stack
at any given time – the contents of the T-register (the top register)
will be lost whenever a fifth number is entered.
Note
2-4
Arithmetic – How the Stack Does It
The contents of the stack move up and down automatically as new numbers enter
the X–register (lifting the stack) and as operators combine two numbers in the X–
and Y–registers to produce one new number in the X–register (dropping the stack).
Suppose the stack is filled with the numbers 1, 2, 3, and 4. See how the stack drops
and lifts its contents while calculating
1. The stack "drops" its contents. The T–(top) register replicates its contents.
2. The stack "lifts" its contents. The T–register's contents are lost.
3. The stack drops.
ꢀ
Notice that when the stack lifts, it replaces the contents of the T– (top) register
with the contents of the Z–register, and that the former contents of the T–
register are lost. You can see, therefore, that the stack's memory is limited to
four numbers.
ꢀ
ꢀ
Because of the automatic movements of the stack, you do not need to clear
the X–register before doing a new calculation.
Most functions prepare the stack to lift its contents when the next number
enters the X–register. See appendix B for lists of functions that disable stack
lift.
2-5
How ENTER Works
You know that separates two numbers keyed in one after the other. In terms
of the stack, how does it do this? Suppose the stack is again filled with 1, 2, 3, and
4. Now enter and add two new numbers:
5+6
1 lost
2 lsot
T
Z
Y
X
1
2
3
4
2
3
4
5
3
4
5
5
3
4
5
6
3
3
4
11
1
2
3
4
1. Lifts the stack.
2. Lifts the stack and replicates the X–register.
3. Does not lift the stack.
4. Drops the stack and replicates the T–register.
replicates the contents of the X–register into the Y–register. The next
number you key in (or recall) writes over the copy of the first number left in the X–
register. The effect is simply to separate two sequentially entered numbers.
You can use the replicating effect of to clear the stack quickly: press 0
. All stack registers now contain zero. Note, however, that
you don't need to clear the stack before doing calculations.
Using a Number Twice in a Row
You can use the replicating feature of to other advantages. To add a
number to itself, press .
2-6
Filling the stack with a constant
The replicating effect of together with the replicating effect of stack drop
(from T into Z) allows you to fill the stack with a numeric constant for calculations.
Example:
Given bacterial culture with a constant growth rate of 50% per day, how large
would a population of 100 be at the end of 3 days?
Replicates T – register
T
Z
Y
X
1.5
1.5
1.5
1.5
1.5
1.5
1.5
100
1.5
1.5
1.5
150
1.5
1.5
1.5
225
1.5
1.5
1.5
337.5
1
2
3
4
5
1. Fills the stack with the growth rate.
2. Keys in the initial population.
3. Calculates the population after 1 day.
4. Calculates the population after 2 days.
5. Calculates the population after 3 days.
How to Clear the Stack
Clearing the X–register puts a zero in the X–register. The next number you key in (or
recall) writes over this zero.
There are four ways to clear the contents of the X–register, that is, to clear x:
1. Press
2. Press
3. Press
() (Mainly used during program entry.)
4. Press
() to clear the X-, Y-, Z-, and T-registers to zero.
For example, if you intended to enter 1 and 3 but mistakenly entered 1 and 2, this
is what you should do to correct your error:
2-7
T
Z
Y
X
1
1
1
2
1
0
1
3
1
2
C
3
1
1
2
3
4
5
1. Lifts the stack
2. Lifts the stack and replicates the X–register.
3. Overwrites the X–register.
4. Clears x by overwriting it with zero.
5. Overwrites x (replaces the zero.)
The LAST X Register
The LAST X register is a companion to the stack: it holds the number that was in the
X–register before the last numeric function was executed. (A numeric function is an
operation that produces a result from another number or numbers, such as .)
Pressing returns this value into the X–register.
This ability to retrieve the "last x" has two main uses:
1. Correcting errors.
2. Reusing a number in a calculation.
See appendix B for a comprehensive list of the functions that save x in the LAST X
register.
2-8
Correcting Mistakes with LAST X
Wrong Single Argument Function
If you execute the wrong single argument function, use to retrieve
the number so you can execute the correct function. (Press first if you want to
clear the incorrect result from the stack.)
Since and don't cause the stack to drop, you can recover
from these functions in the same manner as from single argument functions.
Example:
5
Suppose that you had just computed ln 4.7839 × (3.879 × 10 ) and wanted to find
its square root, but pressed by mistake. You don't have to start over! To find
the correct result, press .
Mistakes with Two Argument Functions
If you make a mistake with a two argument operation (such as , ), or x),
you can correct it by using and the inverse of the two argument
operation.
1. Press to recover the second number (x just before the operation).
2. Execute the inverse operation. This returns the number that was originally first.
The second number is still in the LAST X register. Then:
ꢀ
If you had used the wrong function, press again to restore the
original stack contents. Now execute the correct function.
ꢀ
If you had used the wrong second number, key in the correct one and
execute the function.
If you had used the wrong first number, key in the correct first number, press
to recover the second number, and execute the function again.
(Press first if you want to clear the incorrect result from the stack.)
2-9
Example:
Suppose you made a mistake while calculating
16 × 19 = 304
There are three kinds of mistakes you could have made:
Wrong
Mistake:
Correction:
Calculation:
Wrong function
Ù
Wrong first number
Wrong second number
Reusing Numbers with LAST X
You can use to reuse a number (such as a constant) in a calculation.
Remember to enter the constant second, just before executing the arithmetic
operation, so that the constant is the last number in the X–register, and therefore can
be saved and retrieved with .
Example:
96.704+ 52.3947
Calculate
52.3947
Keys:
Display:
Description:
Enters first number.
Intermediate result.
Brings back display from before
.
Final result.
Example:
Two close stellar neighbors of Earth are Rigel Centaurus (4.3 light–years away) and
15
Sirius (8.7 light–years away). Use c, the speed of light (9.5 × 10 meters per year)
to convert the distances from the Earth to these stars into meters:
15
To Rigel Centaurus: 4.3 yr × (9.5 × 10 m/yr).
15
To Sirius: 8.7 yr × (9.5 × 10 m/yr).
Keys:
Display:
Description:
Light–years to Rigel Centaurus.
Speed of light, c.
_
Meters to R. Centaurus.
Retrieves c.
Meters to Sirius.
Chain Calculations in RPN Mode
In RPN mode, the automatic lifting and dropping of the stack's contents let you
retain intermediate results without storing or reentering them, and without using
parentheses.
Work from the Parentheses Out
For example, evaluate (12 + 3) × 7.
If you were working out this problem on paper, you would first calculate the
intermediate result of (12 + 3) ...
(12 + 3) = 15
… then you would multiply the intermediate result by 7:
(15) × 7 = 105
Evaluate the expression in the same way on the HP 35s, starting inside the
parentheses.
Keys:
Display:
Description:
Calculates the intermediate result first.
You don't need to press to save this intermediate result before
proceeding; since it is a calculated result, it is saved automatically.
Keys:
Display:
Description:
Pressing the function key produces the
answer. This result can be used in
further calculations.
Now study the following examples. Remember that you need to press only
to separate sequentially-entered numbers, such as at the beginning of an
expression. The operations themselves (, , etc.) separate subsequent
numbers and save intermediate results. The last result saved is the first one retrieved
as needed to carry out the calculation.
Calculate 2 ÷ (3 + 10):
Keys:
Display:
Description:
Calculates (3 + 10) first.
Puts 2 before 13 so the division is
correct: 2 ÷ 13.
Calculate 4 ÷ [14 + (7 × 3) – 2]:
Keys:
Display:
Description:
Calculates (7 × 3).
Calculates denominator.
Puts 4 before 33 in preparation for
division.
Calculates 4 ÷ 33, the answer.
Problems that have multiple parentheses can be solved in the same manner using
the automatic storage of intermediate results. For example, to solve (3 + 4) × (5 + 6)
on paper, you would first calculate the quantity (3 + 4). Then you would calculate (5
+ 6). Finally, you would multiply the two intermediate results to get the answer.
Work through the problem the same way with the HP 35s, except that you don't
have to write down intermediate answers—the calculator remembers them for you.
Keys:
Display:
Description:
First adds (3+4)
Then adds (5+6)
Then multiplies the intermediate
answers together for the final
answer.
Exercises
Calculate:
(16.3805x5)
= 181.0000
0.05
Solution:
Calculate:
[(2+ 3)×(4 + 5)] + [(6 + 7)×(8+ 9)] = 21.5743
Solution:
Calculate:
(10 – 5) ÷ [(17 – 12) × 4] = 0.2500
Solution:
or
Order of Calculation
We recommend solving chain calculations by working from the innermost
parentheses outward. However, you can also choose to work problems in a left–
to–right order.
For example, you have already calculated:
4 ÷ [14 + (7 × 3) – 2]
by starting with the innermost parentheses (7 × 3) and working outward, just
as you would with pencil and paper. The keystrokes were
.
If you work the problem from left–to–right, press
.
This method takes one additional keystroke. Notice that the first intermediate result is
still the innermost parentheses (7 × 3). The advantage to working a problem left–to–
right is that you don't have to use to reposition operands for noncommutative
functions ( and ).
However, the first method (starting with the innermost parentheses) is often preferred
because:
ꢀ
ꢀ
It takes fewer keystrokes.
It requires fewer registers in the stack.
When using the left–to–right method, be sure that no more
than four intermediate numbers (or results) will be needed at
Note
one time (the stack can hold no more than four numbers).
The above example, when solved left–to–right, needed all registers in the stack at
one point:
Keys:
Display:
Description:
Saves 4 and 14 as intermediate
numbers in the stack.
_
At this point the stack is full with
numbers for this calculation.
Intermediate result.
Intermediate result.
Intermediate result.
Final result.
More Exercises
Practice using RPN by working through the following problems:
Calculate:
(14 + 12) × (18 – 12) ÷ (9 – 7) = 78.0000
A Solution:
Calculate:
2
23 – (13 × 9) + 1/7 = 412.1429
A Solution:
Calculate:
(5.4× 0.8) ÷ (12.5− 0.73) = 0.5961
Solution:
or
Calculate:
8.33×(4− 5.2)÷[(8.33− 7.46)×0.32]
= 4.5728
4.3×(3.15− 2.75)− (1.71×2.01)
A Solution:
3
Storing Data into Variables
The HP 35s has 30 KB of memory, in which you can store numbers, equations, and
programs. Numbers are stored in locations called variables, each named with a
letter from A through Z. (You can choose the letter to remind you of what is stored
there, such as B for bank balance and C for the speed of light.)
Example:
This example shows you how to store the value 3 in the variable A, first in RPN
mode and then in ALG mode.
Keys:
Display:
Description:
Switch to RPN mode (if necessary)
9( )
Enter the value (3)
_
The Store command prompts for a
letter; note the A…Z annunciator.
The value 3 is stored in A and
returned to the stack.
_
A
Switch to ALG mode (if necessary)
9( )
_
Again, the Store command prompts
for a letter and the A…Z annunciator
appears.
A
The value 3 is stored in A and the
result is placed in line 2.
3-1
In ALG mode, you can store an expression into a variable; in this case, the value of
the expression is stored in the variable rather than the expression itself.
Example:
Keys:
Display:
Description:
Enter the expression, then
proceed as in the previous
example.
Each pink letter is associated with a key and a unique variable. (The A..Z
annunciator in the display confirms this.)
Note that the variables, X, Y, Z and T are different storage locations from the X–
register, Y–register, Z–register, and T–register in the stack.
Storing and Recalling Numbers
Numbers and vectors are stored into, and recalled from, lettered variables by
means of the Store () and Recall () commands. Numbers may be
real or complex, decimal or fraction, base 10 or other as supported by the HP 35s.
To store a copy of a displayed number (X–register) to a direct variable:
Press letter–key .
To recall a copy of a number from a direct variable to the display:
Press letter–key .
Example: Storing Numbers.
23
Store Avogadro's number (approximately 6.0221 × 10 ) in A.
3-2
Keys:
Display:
_
Description:
Avogadro's number.
_ “” prompts for variable.
A
_
Stores a copy of Avogadro's number
in A. This also terminates digit entry .
Clears the number in the display.
A..Z The A..Z annunciator Turns on
Copies Avogadro's number from A
the display.
A
To recall the value stored in a variable, use the Recall command. The display of this
command differs slightly from RPN to ALG mode, as the following example
illustrates.
Example:
In this example, we recall the value of 1.75 that we stored in the variable G in the
last example. This example assumes the HP 35s is still in ALG mode at the start.
Keys:
G
Display:
Description:
Pressing simply activates A…Z
mode; no command is pasted into
line 1.
In ALG mode, Recall can be used to paste a variable into an expression in the
command line. Suppose we wish to evaluate 15-2×G, with G=1.75 from above.
Keys:
Display:
Description:
G
We now proceed to switch to RPN mode and recall the value of G.
3-3
Keys:
9()
Display:
Description:
Switch to RPN mode
In RPN mode, pastes the
command into the edit line.
_
G
No need to press .
Viewing a Variable
The VIEW command () displays the value of a variable without recalling
that value to the x-register. The display takes the form Variable=Value. If the number
has too many digits to fit into the display, use Õor Öto view the
missing digits. To cancel the VIEW display, press or . The VIEW command
is most often used in programming but it is useful anytime you want to view a
variable’s value without affecting the stack.
Using the MEM Catalog
The MEMORY catalog (u) provides information about the amount of
available memory. The catalog display has the following format:
where mm,mmm is the number of bytes of available memory and nnn is the amount
of used indirect variables.
For more information on indirect variables, see Chapter 14.
The VAR catalog
By default, all direct variables from A to Z contain the value zero. If you store a non-
zero value in any direct variable, that variable’s value can be viewed in the VAR
Catalog (u()).
3-4
Example:
In this example, we store 3 in C, 4 in D, and 5 in E. Then we view these variables
via the VAR Catalog and clear them as well. This example uses RPN mode.
Keys:
(
Display:
Description:
Clear all direct variables
)
Store 3 in C, 4 in D, and 5 in E.
Enter the VAR catalog.
C
D
E
u()
Note the ꢂ and ꢃ annunciators indicating that the Øand ×keys are active
to help you scroll through the catalog; however, if Fraction Display mode is active,
the ꢄ and ꢅ annunciators will not be active to indicate accuracy unless there is
only one variable in the catalog. We return to our example, illustrating how to
navigate the VAR catalog.
Scroll down to the next direct
Ø
variable with non-zero value: D=4.
Scroll down once more to see E=5.
Ø
While we are in the VAR catalog, let’s extend this example to show you how to
clear the value of a variable to zero, effectively deleting the current value. We’ll
delete E.
E is no longer in the VAR catalog,
as its value is zero. The next
variable is C as shown.
Suppose now that you wish to copy the value of C to the stack.
The value of C=3 is copied to the
x-register and 5 (from defining E=5
previously) moves to the y-register.
3-5
To leave the VAR catalog at any time, press either or . An alternate
method to clearing a variable is simply to store the value zero in it. Finally, you can
clear all direct variables by pressing
(). If all direct
variables have the value zero, then attempting to enter the VAR catalog will display
the error message “ ”.
If the value of a variable has too many digits to display completely, you can use
Õand Öto view the missing digits.
Arithmetic with Stored Variables
Storage arithmetic and recall arithmetic allow you to do calculations with a
number stored in a variable without recalling the variable into the stack. A
calculation uses one number from the X–register and one number from the
specified variable.
Storage Arithmetic
Storage arithmetic uses , , , or
to do arithmetic in the variable itself and to store the result there. It uses the
value in the X–register and does not affect the stack.
New value of variable = Previous value of variable {+, –, ×, ÷} x.
For example, suppose you want to reduce the value in A(15) by the number in the
X–register (3, displayed). Press A. Now A = 12, while 3 is still in
the display.
3-6
15
12
A
A
Result: 15 – 3
that is, A – x
t
t
T
Z
Y
X
T
Z
Y
X
z
y
3
z
y
3
A
Recall Arithmetic
Recall arithmetic uses , , , or to do arithmetic
in the X–register using a recalled number and to leave the result in the display. Only
the X–register is affected. The value in the variable remains the same and the result
replaces the value in the x-register.
New x = Previous x {+, –, ×, ÷} Variable
For example, suppose you want to divide the number in the X–register (3, displayed)
by the value in A(12). Press A. Now x = 0.25, while 12 is still in A.
Recall arithmetic saves memory in programs: using A (one instruction)
uses half as much memory as A, (two instructions).
12
12
A
A
t
t
z
T
Z
Y
X
T
Z
Y
X
z
y
3
y
Result: 3 ÷ 12
that is, x ÷ 12
A
0.25
3-7
Example:
Suppose the variables D, E, and F contain the values 1, 2, and 3. Use storage
arithmetic to add 1 to each of those variables.
Keys:
Display:
Description:
Stores the assumed values into the
variable.
D
E
F
Adds1 to D, E, and F.
D
E
F
Displays the current value of D.
D
E
F
Clears the VIEW display; displays X-
register again.
Suppose the variables D, E, and F contain the values 2, 3, and 4 from the last
example. Divide 3 by D, multiply it by E, and add F to the result.
Keys:
D
E
F
Display:
Description:
Calculates 3 ÷ D.
3 ÷ D × E.
3 ÷ D × E + F.
Exchanging x with Any Variable
The key allows you to exchange the contents of x (the displayed X –
register) with the contents of any variable. Executing this function does not affect the
Y–, Z–, or T–registers.
3-8
Example:
Keys:
Display:
Description:
Stores 12 in variable A.
A
_
Displays x.
Exchanges contents of the X–register
and variable A.
A
Exchanges contents of the X–register
and variable A.
A
12
3
A
A
t
t
T
Z
Y
X
T
z
y
3
z
Z
y
Y
A
12
X
The Variables "I" and "J"
There are two variables that you can access directly: the variables I and J. Although
they store values as other variables do, I and J are special in that they can be used
to refer to other variables, including the statistical registers, using the (I) and (J)
commands. (I) is found on the key, while (J) is on the key. This is a
programming technique called indirect addressing that is covered under “Indirectly
Addressing Variables and Labels” in chapter 14.
3-9
4
Real–Number Functions
This chapter covers most of the calculator's functions that perform computations on
real numbers, including some numeric functions used in programs (such as ABS, the
absolute–value function). These functions are addressed in groups, as follows:
ꢀ
ꢀ
ꢀ
ꢀ
ꢀ
ꢀ
ꢀ
ꢀ
ꢀ
ꢀ
Exponential and logarithmic functions.
Quotient and Remainder of Divisions.
Power functions. ( and )
Trigonometric functions.
Hyperbolic functions.
Percentage functions.
Physics constants
Conversion functions for coordinates, angles, and units.
Probability functions.
Parts of numbers (number–altering functions).
Arithmetic functions and calculations were covered in chapters 1 and 2. Advanced
numeric operations (root–finding, integrating, complex numbers, base conversions,
and statistics) are described in later chapters. The examples in this chapter all
assume the HP 35s is in RPN mode.
Exponential and Logarithmic Functions
Put the number in the display, then execute the function- there is no need to press
.
4-1
To Calculate:
Press:
Natural logarithm (base e)
Common logarithm (base 10)
Natural exponential
Common exponential (antilogarithm)
Quotient and Remainder of Division
You can use ()and () to produce the
integer quotient and integer remainder, respectively, from the division of two
integers.
1. Key in the first integer.
2. Press to separate the first number from the second.
3. Key in the second number. (Do not press .)
4. Press the function key.
Example:
To display the quotient and remainder produced by 58 ÷ 9
Keys:
Display:
Description:
Displays the quotient.
()
()
Displays the remainder.
Power Functions
In RPN mode, to calculate a number y raised to a power x, key in y x, then
press . (For y>0, x can be any number; for y<0, x must be positive.)
4-2
To Calculate:
2
15
Press:
Result:
6
10
4
5
2
–1.4
3
(–1.4)
th
In RPN mode, to calculate a root x of a number y (the x root of y), key in y
x, then press . For y < 0, x must be an integer.
To Calculate:
Press:
Result:
196
3 −125
4 625
−1.4 .37893
Trigonometry
Entering π
Press to place the first 12 digits of π into the X–register.
(The number displayed depends on the display format.) Because is a
function that returns an approximation of π to the stack, it is not necessary to press
.
Note that the calculator cannot exactly represent π, since π is a transcendental
number.
4-3
Setting the Angular Mode
The angular mode specifies which unit of measure to assume for angles used in
trigonometric functions. The mode does not convert numbers already present (see
"Conversion Functions" later in this chapter).
360 degrees = 2π radians = 400 grads
To set an angular mode, press 9. A menu will be displayed from which you
can select an option.
Option
Description
Annunciator
Sets degree mode, which uses decimal
degrees rather than hexagesimal degrees
(degrees, minutes, seconds)
none
Sets radian mode
RAD
Sets gradient mode
GRAD
Trigonometric Functions
With x in the display:
To Calculate:
Press:
Sine of x.
Cosine of x.
Tangent of x.
Arc sine of x.
Arc cosine of x.
Arc tangent of x.
Calculations with the irrational number π cannot be expressed
exactly by the 15–digit internal precision of the calculator. This is
particularly noticeable in trigonometry. For example, the
Note
–13
calculated sin π (radians) is not zero but –2.0676 × 10
, a very
small number close to zero.
4-4
Example:
Show that cosine (5/7)π radians and cosine 128.57° are equal (to four significant
digits).
Keys:
Display:
Description:
Sets Radians mode; RAD
annunciator on.
9()
5/7 in decimal format.
Cos (5/7)π.
Switches to Degrees mode (no
annunciator).
9()
Calculates cos 128.57°, which is
the same as cos (5/7)π.
Programming Note:
Equations using inverse trigonometric functions to determine an angle θ, often look
something like this:
θ = arctan (y/x).
If x = 0, then y/x is undefined, resulting in the error: .
4-5
Hyperbolic Functions
With x in the display:
To Calculate:
Hyperbolic sine of x (SINH).
Press:
Hyperbolic cosine of x (COSH).
Hyperbolic tangent of x (TANH).
Hyperbolic arc sine of x (ASINH).
Hyperbolic arc cosine of x (ACOSH).
Hyperbolic arc tangent of x (ATANH).
Percentage Functions
The percentage functions are special (compared with and ) because they
preserve the value of the base number (in the Y–register) when they return the result
of the percentage calculation (in the X–register). You can then carry out subsequent
calculations using both the base number and the result without reentering the base
number.
To Calculate:
Press:
x% of y
y x
y x
Percentage change from y to x. (y≠ 0)
Example:
Find the sales tax at 6% and the total cost of a $15.76 item.
Use FIX 2 display format so the costs are rounded appropriately.
4-6
Keys:
Display:
Description:
Rounds display to two decimal
places.
8()
Calculates 6% tax.
Total cost (base price + 6% tax).
Suppose that the $15.76 item cost $16.12 last year. What is the percentage
change from last year's price to this year's?
Keys:
Display:
Description:
This year's price dropped about
2.2% from last year's price.
Restores FIX 4 format.
8()
The order of the two numbers is important for the %CHG function.
The order affects whether the percentage change is considered
positive or negative.
Note
4-7
Physics Constants
There are 41 physics constants in the CONST menu. You can press
to view the following items.
CONST Menu
Items
Description
Value
–1
Speed of light in vacuum
299792458 m s
–2
Standard acceleration of gravity
Newtonian constant of
gravitation
9.80665 m s
–11
3
– 1 –2
6.673×10
m kg
s
3
–1
Molar volume of ideal gas
Avogadro constant
Rydberg constant
Elementary charge
Electron mass
0.022413996 m mol
23
–1
mol
6.02214199×10
–1
10973731.5685 m
∞
–19
1.602176462×10
C
kg
kg
kg
–31
9.10938188×10
–27
Proton mass
Neutron mass
1.67262158×10
1.67492716×10
–27
–28
Muon mass
Boltzmann constant
Planck constant
1.88353109×10
1.3806503×10
6.62606876×10
kg
–1
–23
J K
–34
J s
J s
–34
Planck constant over 2 pi
1.054571596×10
–15
Magnetic flux quantum
Bohr radius
2.067833636×10
Wb
m
–11
5.291772083×10
–1
–12
Electric constant
8.854187817×10
F m
ε
–1 –1
k
Molar gas constant
Faraday constant
8.314472 J mol
–1
96485.3415 C mol
–27
Atomic mass constant
Magnetic constant
1.66053873×10
kg
–2
–6
1.2566370614×10 NA
–1
–1
–1
–1
–1
–24
Bohr magneton
9.27400899×10
5.05078317×10
1.410606633×10
–9.28476362×10
–9.662364×10
J T
J T
J T
J T
J T
–27
–26
–24
–27
Nuclear magneton
Proton magnetic moment
Electron magnetic moment
Neutron magnetic moment
4-8
Items
Description
Value
–1
–26
Muon magnetic moment
Classical electron radius
–4.49044813×10
J T
–15
2.817940285×10
m
Characteristic impendence of
vacuum
376.730313461 Ω
–12
Compton wavelength
2.426310215×10
m
m
λ
–15
Neutron Compton wavelength
Proton Compton wavelength
Fine structure constant
1.319590898×10
λ
α
–15
1.321409847×10
m
–3
λ
7.297352533×10
–2 –4
–8
Stefan–Boltzmann constant
Celsius temperature
5.6704×10 W m
K
σ
273.15
Standard atmosphere
101325 Pa
a
γ
–1 –1
Proton gyromagnetic ratio
267522212 s T
2
–16
First radiation constant
Second radiation constant
Conductance quantum
374177107×10
W m
0.014387752 m K
–5
7.748091696×10
S
The base number of natural
logarithm(natural constant)
2.71828182846
Reference: Peter J.Mohr and Barry N.Taylor, CODATA Recommended Values of
the Fundamental Physical Constants: 1998, Journal of Physical and Chemical
Reference Data,Vol.28, No.6,1999 and Reviews of Modern Physics,Vol.72,
No.2, 2000.
To insert a constant:
1. Position your cursor where you want the constant inserted.
2. Press to display the physics constants menu.
3. Press ÕÖ×Ø(or, you can press to access the next
page, one page at a time) to scroll through the menu until the constant you
want is underlined, then press to insert the constant.
Note that constants should be referred to by their names rather than their values,
when used in expressions, equations, and programs.
4-9
Conversion Functions
The HP 35s supports four types of conversions. You can convert between:
ꢀ
ꢀ
ꢀ
ꢀ
rectangular and polar formats for complex numbers
degrees, radians, and gradients for angle measures
decimal and hexagesimal formats for time (and degree angles)
various supported units (cm/in, kg/lb, etc)
With the exception of the rectangular and polar conversions, each of the
conversions is associated with a particular key. The left (yellow) shift of the key
converts one way while the right (blue) shift of the same key converts the other way.
For each conversion of this type, the number you entered is assumed to be
measured using the other unit. For example, when using ¾to convert a number
to Fahrenheit degrees, the number you enter is assumed to be a temperature
measured in Celsius degrees. The examples in this chapter utilize RPN mode. In
ALG mode, enter the function first, then the number to convert.
Rectangular/Polar Conversions
Polar coordinates (r,θ) and rectangular coordinates (x,y) are measured as shown in
the illustration. The angle θ uses units set by the current angular mode. A calculated
result for θ will be between –180° and 180°, between –π and π radians, or
between –200 and 200 grads.
To convert between rectangular and polar coordinates:
The format for representing complex numbers is a mode setting. You may enter a
complex number in any format; upon entry, the complex number is converted to the
format determined by the mode setting. Here are the steps required to set a
complex number format:
1. Press 8 and then choose either ( ) or () in
RPN mode (in ALG mode, you may also choose ( )
2. Input your desired coordinate value (x 6 y, x y 6 or r ?a)
3. press
Example: Polar to Rectangular Conversion.
In the following right triangles, find sides x and y in the triangle on the left, and
hypotenuse r and angle θ in the triangle on the right.
10
r
y
4
30o
θ
x
3
Keys:
9()
8 ( )
Display:
Description:
Sets Degrees and complex
coordinate mode.
Convert rθa (polar) to xiy
(rectangular).
?
Sets complex coordinate
mode.
θ
8
()
Convert xiy (rectangular) to
θ
6
rθ a (polar).
Example: Conversion with Vectors.
Engineer P.C. Bord has determined that in the RC circuit shown, the total impedance
is 77.8 ohms and voltage lags current by 36.5º. What are the values of resistance R
and capacitive reactance X in the circuit?
C
Use a vector diagram as shown, with impedance equal to the polar magnitude, r,
and voltage lag equal to the angle, θ, in degrees. When the values are converted
to rectangular coordinates, the x–value yields R, in ohms; the y–value yields X , in
C
ohms.
R
θ
_
36.5o
R
X
c
77.8 ohms
C
Keys:
Display:
Description:
Sets Degrees and complex
coordinate mode.
9()
¹8 ( )
?
θ
Enters θ, degrees of voltage lag.
Enters r, ohms of total
impedance.
Calculates x, ohms
resistance, R.
Calculates y, ohms
reactance, X
C
Time Conversions
The HP 35s can convert between decimal and hexagesimal formats for numbers.
This is especially useful for time and angles measured in degrees. For example, in
decimal format an angle measured in degrees is expressed as D.ddd…, while in
hexagesimal the same angle is represented as D.MMSSss, where D is the integer
pat of the degree measure, ddd… is the fractional part of the degree measure, MM
is the integer number of minutes, SS is the integer part of the number of seconds,
and ss is the fractional part of the number of seconds.
To convert between decimal format and hours minutes, and seconds:
1. Enter the number you wish to convert
2. Press to convert to hours/degrees, minutes, and seconds or press
5 to convert back to decimal format.
Example: Converting Time Formats.
How many minutes and seconds are there in 1/7 of an hour? Use FIX 6 display
format.
Keys:
Display:
Description:
Sets FIX 6 display format.
8()
1/7 hour as a decimal fraction.
Equals 8 minutes and 34.29
seconds.
Restores FIX 4 format.
8()
Angle Conversions
When converting to radians, the number in the x–register is assumed to be degrees;
when converting to degrees, the number in the x–register is assumed to be radians.
To convert an angle between degrees and radians:
Example
In this example, we convert an angle measure of 30° to π/6 radians.
Keys:
Display:
Description:
Enter the angle in degrees.
_
Convert to radians. Read the result
as 0.5236, a decimal
µ
approximation of π/6.
Unit Conversions
The HP 35s has ten unit–conversion functions on the keyboard: ꢇkg, ꢇlb, ꢇºC,
ꢇºF, ꢇcm, ꢇin, ꢇl, ꢇgal, ꢇMILE,ꢇKM
To Convert:
1 lb
To:
kg
Press:
Displayed Results:
(kilograms)
(pounds)
(°C)
1 kg
lb
32 ºF
ºC
ºF
100 ºC
1 in
(°F)
cm
in
(centimeters)
(inches)
(liters)
100 cm
1 gal
l
1 l
gal
KM
MILE
(gallons)
(KMS)
1 MILE
1 KM
<
(MILES)
;
Probability Functions
Factorial
To calculate the factorial of a displayed non-negative integer x (0 ≤ x ≤ 253), press
*(the right–shifted key).
Gamma
To calculate the gamma function of a noninteger x, Γ(x), key in (x – 1) and press
*. The x! function calculates Γ(x + 1). The value for x cannot be a negative
integer.
Probability
Combinations
To calculate the number of possible sets of n items taken r at a time, enter n first,
x, then r (nonnegative integers only). No item occurs more than once in a
set, and different orders of the same r items are not counted separately.
Permutations
To calculate the number of possible arrangements of n items taken r at a time, enter
n first, {, then r (nonnegative integers only). No item occurs more than
once in an arrangement, and different orders of the same r items are counted
separately.
Seed
To store the number in x as a new seed for the random number generator, press
..
Random number generator
To generate a random number in the range 0 < x < 1, press . (The
number is part of a uniformly–distributed pseudo–random number sequence. It
passes the spectral test of D. Knuth, The Art of Computer Programming, vol. 2,
Seminumerical Algorithms, London: Addison Wesley, 1981.)
The RANDOM function uses a seed to generate a random number. Each random
number generated becomes the seed for the next random number. Therefore, a
sequence of random numbers can be repeated by starting with the same seed. You
can store a new seed with the SEED function. If memory is cleared, the seed is reset
to zero. A seed of zero will result in the calculator generating its own seed.
Example: Combinations of People.
A company employing 14 women and 10 men is forming a six–person safety
committee. How many different combinations of people are possible?
Keys:
Display:
Description:
Twenty–four people grouped six at
a time.
Total number of combinations
possible.
_
x
If employees are chosen at random, what is the probability that the committee will
contain six women? To find the probability of an event, divide the number of
combinations for that event by the total number of combinations.
Keys:
Display:
Description:
Fourteen women grouped six at a
time.
_
Number of combinations of six
women on the committee.
Brings total number of
combinations back into the X–
register.
x
Divides combinations of women
by total combinations to find
probability that any one
combination would have all
women.
Parts of Numbers
These functions are primarily used in programming.
Integer part
To remove the fractional part of x and replace it with zeros, press
(). (For example, the integer part of 14.2300 is 14.0000.)
Fractional part
To remove the integer part of x and replace it with zeros, press
(). (For example, the fractional part of 14.2300 is 0.2300)
Absolute value
To replace a number in the x-register with its absolute value, press . For
complex numbers and vectors, the absolute value of:
1. a complex number in rθa format is r
x2 + y2
2. a complex number in xiy format is
2
2
A 2 + A2 + ⋅⋅⋅ + An
3. a vector [A1,A2,A3, …An] is
=
A
1
Argument value
To extract the argument of a complex number, use =. The argument of a
complex number:
1. in rθa format is a
2. in xiy format is Atan(y/x)
Sign value
To indicate the sign of x, press (). If the x value is negative, –
1.0000 is displayed; if zero, 0.0000 is displayed; if positive, 1.0000 is displayed.
Greatest integer
To obtain the greatest integer equal to or less than given number, press
().
Example:
This example summarizes many of the operations that extract parts of numbers.
To calculate:
The integer part of 2.47
The fractional part of 2.47
The absolute value of –7
Press:
Display:
()
()
The sign value of 9
The greatest integer equal to
()
or less than –5.3
()
The RND function ( ) rounds x internally to the number of digits specified
by the display format. (The internal number is represented by 12 digits.) Refer to
chapter 5 for the behavior of RND in Fraction–display mode.
5
Fractions
In Chapter 1, the section Fractions introduced the basics of entering, displaying,
and calculating with fractions. This chapter gives more information on these topics.
Here is a short review of entering and displaying fractions:
ꢀ
To enter a fraction, press twice: once after the integer part of a mixed
number and again between the numerator and denominator of the fractional
part of the number. To enter 2 3/8, press . To enter 5/8,
press either or .
ꢀ
ꢀ
To toggle Fraction-display mode on and off, press . When
Fraction-display mode is turned off, the display reverts to the previous display
format set via the Display menu. Choosing another format via this menu also
turns off Fraction-display mode, if active.
Functions work the same with fractions as they do with decimal numbers –
except for RND, which is discussed later in this chapter.
The examples in this chapter all utilize RPN mode unless otherwise noted.
Entering Fractions
You can type almost any number as a fraction on the keyboard — including an
improper fraction (where the numerator is larger than the denominator).
Example:
Keys:
Display:
Description:
Turns on Fraction–display mode.
Enters 1.5; shown as a fraction.
3
Enters 1 / .
4
Displays x as a decimal number.
Displays x as a fraction.
5-1
If you didn't get the same results as the example, you may have accidentally
changed how fractions are displayed. (See "Changing the Fraction Display" later in
this chapter.)
The next topic includes more examples of valid and invalid input fractions.
Fractions in the Display
In Fraction–display mode, numbers are evaluated internally as decimal numbers,
then they're displayed using the most precise fractions allowed. In addition,
accuracy annunciators show the direction of any inaccuracy of the fraction
compared to its 12–digit decimal value. (Most statistics registers are exceptions —
they're always shown as decimal numbers.)
Display Rules
The fraction you see may differ from the one you enter. In its default condition, the
calculator displays a fractional number according to the following rules. (To change
the rules, see "Changing the Fraction Display" later in this chapter.)
ꢀ
The number has an integer part and, if necessary, a proper fraction (the
numerator is less than the denominator).
ꢀ
ꢀ
The denominator is no greater than 4095.
The fraction is reduced as far as possible.
Examples:
These are examples of entered values and the displayed results. For comparison, the
internal 12–digit values are also shown. The ꢄ and ꢅ annunciators in the last
column are explained below.
5-2
Entered Value
Internal Value
2.37500000000
14.4687500000
4.50000000000
9.60000000000
2.83333333333
0.00183105469
12349793.0000
16.0001831055
Displayed Fraction
3
2 /
8
15
14
54
/
32
/
12
18
6
/
5
34
ꢈ
ꢉ
/
/
12
15
8192
12345
12345678
3
/
3
16 /
16384
Accuracy Indicators
The accuracy of a displayed fraction is indicated by the ꢄ and ꢅ annunciators at
the right of the display. The calculator compares the value of the fractional part of
the internal 12–digit number with the value of the displayed fraction:
ꢀ
If no indicator is lit, the fractional part of the internal 12–digit value exactly
matches the value of the displayed fraction.
ꢀ
If ꢅ is lit, the fractional part of the internal 12–digit value is slightly less than
the displayed fraction — the exact numerator is no more than 0.5 below the
displayed numerator.
ꢀ
If ꢄ is lit, the fractional part of the internal 12–digit value is slightly greater
than the displayed fraction — the exact numerator is no more than 0.5 above
the displayed numerator.
This diagram shows how the displayed fraction relates to nearby values — ꢄ
means the exact numerator is "a little above" the displayed numerator, and ꢅ
means the exact numerator is "a little below".
0 7/16
0 7/16
0 7/16
6
6.5
7
7.5
8
/
/
/
/
/
16
16
16
16
16
(0.40625)
(0.43750)
(0.46875)
5-3
This is especially important if you change the rules about how fractions are
displayed. (See "Changing the Fraction Display" later.) For example, if you force all
2
fractions to have 5 as the denominator, then / is displayed as ꢄ because
3
3.3333
3
2
the exact fraction is approximately
/ , "a little above" / . Similarly, – / is
5
5
3
displayed as ꢄ because the true numerator is "a little above" 3.
Sometimes an annunciator is lit when you wouldn't expect it to be. For example, if
2
you enter 2 / , you see ꢄ, even though that's the exact number you
3
entered. The calculator always compares the fractional part of the internal value
and the 12–digit value of just the fraction. If the internal value has an integer part,
its fractional part contains less than 12 digits — and it can't exactly match a
fraction that uses all 12 digits.
Changing the Fraction Display
In its default condition, the calculator displays a fractional number according to
certain rules. However, you can change the rules according to how you want
fractions displayed:
ꢀ
ꢀ
You can set the maximum denominator that's used.
You can select one of three fraction formats.
The next few topics show how to change the fraction display.
Setting the Maximum Denominator
For any fraction, the denominator is selected based on a value stored in the
calculator. If you think of fractions as a b/c, then /c corresponds to the value that
controls the denominator.
The /c value defines only the maximum denominator used in Fraction–display mode
— the specific denominator that's used is determined by the fraction format
(discussed in the next topic).
5-4
ꢀ
To set the maximum denominator value, enter the value and then press
. Fraction-display mode will be automatically enabled. The value you
enter cannot exceed 4095.
ꢀ
ꢀ
To recall the /c value to the X–register, press .
To restore the default value to 4095, press or enter any value
greater than 4095 as the maximum denominator. Again, Fraction-display
mode will be automatically enabled.
The /c function uses the absolute value of the integer part of the number in the X–
register. It doesn't change the value in the LAST X register.
If the displayed fraction is too long to fit in the display, the ꢆ annunciator will
appear; you can then use Öand Õto scroll page by page to see the
rest of the fraction. To see the number’s decimal representation, press and then
hold .
Example:
This example illustrates the steps required to set the maximum denominator to 3125
and then show a fraction that is too long for the display.
Keys:
Display:
Description:
Set the maximum denominator to
3125.
Note the missing digits in the
denominator.
#
Õ
Scroll right to see the rest of the
denominator.
Notes:
1. In ALG mode, you can enter an expression in line 1 and then press . In
this case, the expression is evaluated and the result is used to determine the
maximum denominator.
5-5
2. In ALG mode, you can use the result of a calculation as the argument for the /c
function. With the value in line 2, simply press . The value in line 2 is
displayed in Fraction format and the integer part is used to determine the
maximum denominator.
3. You may not use either a complex number or a vector as the argument for the /
c command. The error message “ ” will be displayed.
Choosing a Fraction Format
The calculator has three fraction formats. The displayed fractions are always the
most accurate fractions within the rules for the selected format.
ꢀ
ꢀ
Most precise fractions. Fractions have any denominator up to the /c
value, and they're reduced as much as possible. For example, if you're
studying math concepts with fractions, you might want any denominator to be
possible (/c value is 4095). This is the default fraction format.
Factors of denominator. Fractions have only denominators that are
factors of the /c value, and they're reduced as much as possible. For
example, if you're calculating stock prices, you might want to see
and ( /c value is 8 ). Or if the /c value is 12, possible denominators
are 2, 3, 4, 6, and 12.
ꢀ
Fixed denominator. Fractions always use the /c value as the denominator
— they're not reduced. For example, if you're working with time
measurements, you might want to see ( /c value is 60 ).
There are three flags that control the fraction format. These flags are numbered 7, 8,
and 9. Each flag is either clear or set. Their purposes are as follows:
ꢀ Flag 7 toggles fraction-display mode on or off; clear=off and set=on.
ꢀ Flag 8 toggles between using any value less than or equal to the /c value
or using only factors of the /c value; clear = use any value and set = use
only factors of the /c value.
ꢀ Flag 9 operates only if Flag 8 is set and toggles between reducing or not
reducing the fractions; clear = reduce and set = do not reduce.
With Flags 8 and 9 appropriately cleared or set, you can get the three fraction
formats as shown in the table below:
5-6
To Get This Fraction Format:
Most precise
Factors of denominator
Fixed denominator
Change These Flags:
8
Clear
Set
9
—
Clear
Set
Set
You can change flags 8 and 9 to set the fraction format using the steps listed here.
(Because flags are especially useful in programs, their use is covered in detail in
chapter 14.)
1. Press to get the flag menu.
2. To set a flag, press () and type the flag number, such as 8.
To clear a flag, press () and type the flag number.
To see if a flag is set, press () and type the flag number. Press or
to clear the or response.)
Example:
This example illustrates the display of fractions in the three formats using the number
π. This example assumes fraction-display format is active and that Flag 8 is in its
default state (cleared).
Keys:
Display:
Description:
Sets the maximum /c value back
to the default.
Most precise format
j
Flag 8 = clear.
Flag 8 = set;
()
Factors of denominator format;
819*5=4095
Flag 9 = set;
()
Fixed denominator format
Return to default format (most
precise)
()
(
)
5-7
Examples of Fraction Displays
The following table shows how the number 2.77 is displayed in the three fraction
formats for two /c values.
Fraction
Format
How 2.77 Is Displayed
/c = 4095 /c = 16
(2.7700)
(2.7699)
(2.7699)
(2.7692)
(2.7500)
(2.7500)
Most Precise
2 77/100
2 10/13ꢉ
2 3/4ꢉ
Factors of Denominator
Fixed Denominator
2 1051/1365ꢉ
2 3153/4095ꢉ
2 12/16ꢉ
The following table shows how different numbers are displayed in the three fraction
formats for a /c value of 16.
Fraction
Number Entered and Fraction Displayed
2
/
16
Format ꢀ
2
2
/
25
2
2.5
2.9999
3
Most precise
Factors of
denominator
Fixed denominator
ꢀ For a /c value of 16.
2
2
2 1/2
2 2/3
ꢉ
3
ꢈ
2 9/14
ꢈ
2 1/2
2 11/16
ꢈ
ꢈ
3ꢈ
2 5/8ꢉ
2 0/16 2 8/16 2 11/16
3 0/16
ꢈ
2 10/16
ꢉ
Rounding Fractions
If Fraction–display mode is active, the RND function converts the number in the X–
register to the closest decimal representation of the fraction. The rounding is done
according to the current /c value and the states of flags 8 and 9. The accuracy
indicatior turns off if the fraction matches the decimal representation exactly.
Otherwise, the accuracy indicatior stays on, (See “Accuracy Indicators” earlier in
this chapter.)
In an equation or program, the RND function does fractional rounding if Fraction–
display mode is active.
5-8
Example:
Suppose you have a 56 / –inch space that you want to divide into six equal
3
4
1
sections. How wide is each section, assuming you can conveniently measure /
–
16
inch increments? What's the cumulative roundoff error?
Keys:
Display:
Description:
Sets Flag 8
Sets up fraction format for /
1
–
16
inch increments. (Flags 8 and 9
should be the same as for the
previous example.)
D
Stores the distance in D.
ꢉ
The sections are a bit wider than 9
7
/
16
inches.
Rounds the width to this value.
Width of six sections.
D
()
The cumulative round off error.
Clears flag 8.
Turns off Fraction–display mode.
Fractions in Equations
You can use a fraction in an equation. When an equation is displayed, all
numerical values in the equation are shown in their entered form. Also, fraction-
display mode is available for operations involving equations.
When you're evaluating an equation and you're prompted for variable values, you
may enter fractions — values are displayed using the current display format.
See chapter 6 for information about working with equations.
5-9
Fractions in Programs
You can use a fraction in a program just as you can in an equation; numerical
values are shown in their entered form.
When you're running a program, displayed values are shown using Fraction–
display mode if it's active. If you're prompted for values by INPUT instructions, you
may enter fractions. The program’s result is displayed using the current display
format.
A program can control the fraction display using the /c function and by setting and
clearing flags 7, 8, and 9. See "Flags" in chapter 14.
See chapters 13 and 14 for information about working with programs.
5-10 Fractions
6
Entering and Evaluating Equations
How You Can Use Equations
You can use equations on the HP 35s in several ways:
ꢀ
ꢀ
ꢀ
For specifying an equation to evaluate (this chapter).
For specifying an equation to solve for unknown values (chapter 7).
For specifying a function to integrate (chapter 8).
Example: Calculating with an Equation.
Suppose you frequently need to determine the volume of a straight section of pipe.
The equation is
2
V = .25 π d l
where d is the inside diameter of the pipe, and l is its length.
You could key in the calculation over and over; for example,
calculates the
1
volume of 16 inches of 2 / –inch diameter pipe (78.5398 cubic inches). However,
2
by storing the equation, you get the HP 35s to "remember" the relationship between
diameter, length, and volume — so you can use it many times.
Put the calculator in Equation mode and type in the equation using the following
keystrokes:
6-1
Keys:
Display:
Description:
Selects Equation mode, shown by
the EQN annunciator.
or the current equation in
line 2
Begins a new equation,
turns on the A..Z annunciator so
you can enter a variable name.
types
Digit entry uses the "_" entry
cursor.
_
_
D
ends the number.
π_
types .
π _
π_
π
Terminates and displays the
equation.
Shows the checksum and length
for the equation, so you can check
your keystrokes.
By comparing the checksum and length of your equation with those in the example,
you can verify that you've entered the equation properly. (See "Verifying Equations"
at the end of this chapter for more information.)
Evaluate the equation ( to calculate V ):
Keys:
Display:
Description:
Prompts for variables on the right–
hand side of the equation. Prompts
for D first; value is the current value of
D.
value
1
Enters 2 / inches as a fraction.
2
_
Stores D, prompts for L; value is
current value of L.
Stores L; calculates V in cubic inches
and stores the result in V.
value
6-2
Summary of Equation Operations
All equations you create are saved in the equation list. This list is visible whenever
you activate Equation mode.
You use certain keys to perform operations involving equations. They're described in
more detail later.
When displaying equations in the equation list, two equations are displayed at a
time. The currently active equation is shown on line 2.
Key
Operation
Enters and leaves Equation mode.
Evaluates the displayed equation. If the equation is an
assignment, evaluates the right–hand side and stores
the result in the variable on the left–hand side. If the
equation is an equality or expression, calculates its
value like . (See "Types of Equations" later in this
chapter.)
Evaluates the displayed equation. Calculates its value,
replacing "=" with "–" if an "=" is present.
Solves the displayed equation for the unknown
variable you specify. (See chapter 7.)
Integrates the displayed equation with respect to the
variable you specify. (See chapter 8.)
Deletes the current equation or deletes the element to
the left of the cursor.
Begins editing the displayed equation, only moving
the cursor and not deleting any content.
Öor Õ
Scroll the current equation display screen.
Öor Õ
Steps up or down through the equation list.
Jumps to the top or bottom of the equation list.
×or Ø
×or Ø
Shows the displayed equation's checksum (verification
value) and length (bytes of memory).
Recovers the most recently deleted element or
equation.
:
Leaves Equation mode.
You can also use equations in programs — this is discussed in chapter 13.
6-3
Entering Equations into the Equation List
The equation list is a collection of equations you enter. The list is saved in the
calculator's memory. Each equation you enter is automatically saved in the equation
list.
To enter an equation:
You can make an equation as long as you want – it is limited only by the amount of
available memory.
1. Make sure the calculator is in its normal operating mode, usually with a
number in the display. For example, you can't be viewing the catalog of
variables or programs.
2. Press . The EQN annunciator shows that Equation mode is active, and
an entry from the equation list is displayed.
3. Start typing the equation. The previous display is replaced by the equation
you're entering — the previous equation isn't affected. If you make a mistake,
press or : as required.
4. Press to terminate the equation and see it in the display. The equation
is automatically saved in the equation list — right after the entry that was
displayed when you started typing. (If you press instead, the equation is
saved, but Equation mode is turned off.)
Equations can contain variables, numbers, vectors, functions, and parentheses —
they're described in the following topics. The example that follows illustrates these
elements.
Variables in Equations
You can use any of the calculator's variables in an equation: A through Z,(I) and
(J). You can use each variable as many times as you want.(For information about (I)
and (J), see "Indirectly Addressing Variables and Labels" in chapter 14.)
To enter a variable in an equation, press variable. When you press , the
A..Z annunciator shows that you can press a variable key to enter its name in the
equation.
6-4
Numbers in Equations
You can enter any valid number in an equation, including base 2, 8 and 16, real,
complex, and fractional numbers. Numbers are always shown using ALL display
format, which displays up to 12 characters.
To enter a number in an equation, you can use the standard number–entry keys,
including , , and . Do not use for subtraction.
Functions in Equations
You can enter many HP 35s functions in an equation. A complete list is given under
“Equation Functions” later in this chapter. Appendix G, "Operation Index," also
gives this information.
When you enter an equation, you enter functions in about the same way you put
them in ordinary algebraic equations:
ꢀ
ꢀ
In an equation, certain functions are normally shown between their
arguments, such as "+" and "÷". For such infix operators, enter them in an
equation in the same order.
Other functions normally have one or more arguments after the function
name, such as "COS" and "LN". For such prefix functions, enter them in an
equation where the function occurs — the key you press puts a left
parenthesis after the function name so you can enter its arguments.
ꢀ
If the function has two or more arguments, press to separate them.
6-5
Parentheses in Equations
You can include parentheses in equations to control the order in which operations
are performed. Press 4 to insert parentheses. (For more information, see
"Operator Precedence" later in this chapter.)
Example: Entering an Equation.
Enter the equation r = 2 × c ×(t – a)+25
Keys:
Display:
Description:
π
Shows the last equation used in
the equation list.
Starts a new equation with
_
variable R.
Enters a number
_
Enters infix operators.
_
Enters a prefix function with a left
parenthesis.
4
Enters the argument and right
parenthesis.
Õ
_
Terminates the equation and
displays it.
Shows its checksum and length.
Leaves Equation mode.
Displaying and Selecting Equations
The equation list contains two built-in equations, 2*2 lin. solve and 3*3 lin. Solve,
and the equations you've entered. You can display the equations and select one to
work with.
6-6
To display equations:
1. Press . This activates Equation mode and turns on the EQN annunciator.
The display shows an entry from the equation list:
ꢀ
ꢀ
if the equation pointer is at the top of the list.
The current equation (the last equation you viewed).
2. Press ×or Øto step through the equation list and view each equation.
The list "wraps around" at the top and bottom. marks the
"top" of the list.
To view a long equation:
1. Display the equation in the equation list, as described above. If it's more than
14 characters long, only 14 characters are shown. The ꢆ annunciator
indicates more characters to the right.
2. Press Õto begin editing the equation at the beginning, or press Öto
begin editing the equation at the end. Then press Öor Õrepeatedly to
move the cursor through the equation one character at a time. and ꢆ
display when there are more characters to the left or right.
3. Press Öor Õto scroll the long equations in line 2 by a screen.
To select an equation:
Display the equation in the equation list, as described above. The displayed
equation in line 2 is the one that's used for all equation operations.
Example: Viewing an Equation.
View the last equation you entered.
Keys:
Display:
Description:
Displays the current equation in the
equation list.
Activates cursor to the left of the
Õ
equation
Activates cursor to the right of the
equation
Leaves Equation mode.
Ö
_
6-7
Editing and Clearing Equations
You can edit or clear an equation that you're typing. You can also edit or clear
equations saved in the equation list. However, you cannot edit or clear the two built-
in equations 2*2 lin. solve and 3*3 lin. solve. If you attempt to insert a equation
between the two built-in equations, the new equation will be inserted after 3*3 lin.
solve.
To edit an equation you're typing:
1. Press Öor Õ to move the cursor allowing you to insert characters before
the cursor.
2. Move the cursor and press repeatedly to delete the unwanted number or
function. Pressing when the equation editing line is empty has no effect,
but pressing on an empty equation line causes the empty equation line
to be deleted. The display then shows the previous entry in the equation list.
3. Press (or ) to save the equation in the equation list.
To edit a saved equation:
1. Display the desired equation, press Õto activate the cursor at the beginning
of the equation or press Öto activate the cursor at the end of the
equation.(See "Displaying and Selecting Equations" above.)
2. When the cursor is active in the equation, you can edit the equation just like
you would when entering a new equation.
3. Press (or ) to save the edited equation in the equation list,
replacing the previous version.
Using menus while editing an equation:
1. When editing an equation, selecting a setting menu (such as 9,
8, or
), will end the equation edit status.
2. When editing an equation, selecting an insert or view menu (such as ,
, , , , >,,
and ), the equation will still be in edit mode after inserting the
item.
3. The menus , , are disabled in equation mode.
6-8
To clear a saved equation:
Scroll the equation list up or down until the desired equation is in line 2 of the
display, and then press .
To clear all saved equations:
In EQN mode, press
. Select (). The menu is
displayed. Select Ö(Y) .
Example: Editing an Equation.
Remove 25 in the equation from the previous example.
Keys:
Display:
Description:
Shows the current equation in the
equation list.
Activates cursor at the end of the
equation
Deletes the number 25.
Ö
_
_
Shows the end of edited equation
in the equation list.
Leaves Equation mode.
Types of Equations
The HP 35s works with three types of equations:
ꢀ
Equalities. The equation contains an "=", and the left side contains more
than just a single variable. For example, x + y = r is an equality.
2
2
2
ꢀ
Assignments. The equation contains an "=", and the left side contains just
a single variable. For example, A = 0.5 × b × h is an assignment.
6-9
3
ꢀ
Expressions. The equation does not contain an "=". For example, x + 1
is an expression.
When you're calculating with an equation, you might use any type of equation —
although the type can affect how it's evaluated. When you're solving a problem for
an unknown variable, you'll probably use an equality or assignment. When you're
integrating a function, you'll probably use an expression.
Evaluating Equations
One of the most useful characteristics of equations is their ability to be evaluated —
to generate numeric values. This is what enables you to calculate a result from an
equation. (It also enables you to solve and integrate equations, as described in
chapters 7 and 8).
Because many equations have two sides separated by "=", the basic value of an
equation is the difference between the values of the two sides. For this calculation,
"=" in an equation is essentially treated as "–". The value is a measure of how well
the equation balances.
The HP 35s has two keys for evaluating equations: and . Their
actions differ only in how they evaluate assignment equations:
ꢀ
ꢀ
returns the value of the equation, regardless of the type of equation.
returns the value of the equation — unless it's an assignment–type
equation. For an assignment equation, returns the value of the right
side only, and also "enters" that value into the variable on the left side — it
stores the value in the variable.
The following table shows the two ways to evaluate equations.
Type of Equation
Equality: g(x) = f(x)
Result for
Result for
g(x) – f(x)
2
2
2
Example: x + y = r
2
2
2
x + y – r
ꢀ
y – f(x)
A – 0.5 × b × h
Assignment: y = f(x)
Example: A = 0.5 × b x h
f(x)
0.5 × b × h
ꢀ
Expression: f(x)
f(x)
3
3
Example: x + 1
x + 1
ꢀ Also stores the result in the left–hand variable, A for example.
To evaluate an equation:
1. Display the desired equation. (See "Displaying and Selecting Equations"
above.)
2. Press or . The equation prompts for a value for each variable
needed. (If the base of a number in the equation is different from the current
base, the calculator automatically changes the result to the current base.)
3. For each prompt, enter the desired value:
ꢀ
ꢀ
If the displayed value is good, press .
If you want a different value, type the value and press . (Also see
"Responding to Equation Prompts" later in this chapter.)
To halt a calculation, press or . The message is shown in
line 2.
The evaluation of an equation takes no values from the stack — it uses only numbers
in the equation and variable values. The value of the equation is returned to the X–
register.
Using ENTER for Evaluation
If an equation is displayed in the equation list, you can press to evaluate
the equation. (If you're in the process of typing the equation, pressing only
ends the equation — it doesn't evaluate it.)
ꢀ
ꢀ
If the equation is an assignment, only the right–hand side is evaluated. The
result is returned to the X–register and stored in the left–hand variable, then
the variable is viewed in the display. Essentially, finds the value of
the left–hand variable.
If the equation is an equality or expression, the entire equation is evaluated
— just as it is for . The result is returned to the X–register.
Example: Evaluating an Equation with ENTER.
Use the equation from the beginning of this chapter to find the volume of a 35–mm
diameter pipe that's 20 meters long.
Keys:
Display:
Description:
Displays the desired
equation.
π
( ×as required)
Starts evaluating the
assignment equation so the
value will be stored in V.
Prompts for variables on the
right–hand side of the
equation. The current value
for D is 2.5.
Stores D, prompts for L,
whose current value is 16.
Stores L in millimeters;
calculates V in cubic
millimeters, stores the result
in V, and displays V.
Changes cubic millimelers to
liters (but doesn't change V.
Using XEQ for Evaluation
If an equation is displayed in the equation list, you can press to evaluate the
equation. The entire equation is evaluated, regardless of the type of equation. The
result is returned to the X–register.
Example: Evaluating an Equation with XEQ.
Use the results from the previous example to find out how much the volume of the
pipe changes if the diameter is changed to 35.5 millimeters.
Keys:
Display:
Description:
Displays the desired equation.
Starts evaluating the equation to
find its value. Prompts for all
variables.
Keeps the same V, prompts for D.
Stores new D, Prompts for L.
Keeps the same L; calculates the
value of the equation — the
imbalance between the left and
right sides.
Changes cubic millimeters to liters.
The value of the equation is the old volume (from V) minus the new volume
(calculated using the new D value) — so the old volume is smaller by the amount
shown.
Responding to Equation Prompts
When you evaluate an equation, you're prompted for a value for each variable
that's needed. The prompt gives the variable name and its current value, such as
. If the unnamed indirect variable (I) or (J) is in an equation, you will not
be prompted to for its value, as the current value stored in the unnamed indirect
variable will be used automatically. (See chapter 14)
ꢀ
To leave the number unchanged, just press .
ꢀ
To change the number, type the new number and press . This new
number writes over the old value in the X–register. You can enter a number as
a fraction if you want. If you need to calculate a number, use normal
keyboard calculations, then press . For example, you can press 2
5 in RPN mode, or press 2 5 in ALG
mode. Before pressing , the expression will display in line 2, and
after pressing , the result of the expression will display in line 2.
ꢀ
ꢀ
To cancel the prompt, press . The current value for the variable remains in
the X–register and displays in right-side of the line two. If you press
during digit entry, it clears the number to zero. Press again to cancel the
prompt.
To display digits hidden by the prompt, press .
In RPN mode,each prompt puts the variable value in the X–register and disables
stack lift. If you type a number at the prompt, it replaces the value in the X–register.
When you press , stack lift is enabled, so the value is saved on the stack.
The Syntax of Equations
Equations follow certain conventions that determine how they're evaluated:
ꢀ
ꢀ
ꢀ
How operators interact.
What functions are valid in equations.
How equations are checked for syntax errors.
Operator Precedence
Operators in an equation are processed in a certain order that makes the
evaluation logical and predictable:
Order
Operation
Parentheses
Functions
Power ( )
Unary Minus ()
Multiply and Divide
Add and Subtract
Equality
Example
1
2
3
4
5
6
7
,
,
So, for example, all operations inside parentheses are performed before operations
outside the parentheses.
Examples:
Equations
Meaning
3
a × (b ) = c
3
(a × b) = c
a + (b/c) = 12
(a + b) / c = 12
2
[%CHG ((t + 12), (a – 6)) ]
Equation Functions
The following table lists the functions that are valid in equations. Appendix G,
"Operation Index" also gives this information.
LN
LOG
IP
INTG
COS
COSH
EXP
FP
IDIV
TAN
TANH
ALOG
RND
RMDR
ASIN
SQ
ABS
SQRT
!
INV
SGN
SIN
ACOS
ACOSH
ATAN
ATANH
SINH
ASINH
%CHG
nCr
XROOT
nPr
ꢇDEG
ꢇL
ꢇRAD
ꢇGAL
HMSꢇ
ꢇMILE
ꢇHMS
ꢇKM
ꢇKG
SEED
+
ꢇLB
ARG
–
ꢇ°C
RAND
×
ꢇ°F
ꢇCM
ꢇIN
π
÷
σ y
^
x
sx
sy
σ x
y
r
m
b
x w
ˆ
x
ˆ
y
2
2
n
Σx
Σy
Σxy
Σx
Σy
For convenience, prefix–type functions, which require one or two arguments, display
a left parenthesis when you enter them.
The prefix functions that require two arguments are %CHG, XROOT, IDIV, RMDR,
nCr and nPr. Separate the two arguments with a comma.
In an equation, the XROOT function takes its arguments in the opposite order from
RPN usage. For example, –83 to is equivalent to .
All other two argument functions take their arguments in the Y, X order used for
RPN. For example, 28 4 xis equivalent to .
For two argument functions, be careful if the second argument is negative. These are
valid equations:
Eight of the equation functions have names that differ from their equivalent
operations:
RPN Operation
Equation function
2
x
SQ
SQRT
x
e
x
EXP
ALOG
INV
x
10
1/x
X
y
XROOT
x
^
y
INT÷
IDIV
Example: Perimeter of a Trapezoid.
The following equation calculates the perimeter of a trapezoid. This is how the
equation might appear in a book:
1
1
)
Perimeter = a + b + h ( sinθ sinφ
+
a
h
φ
θ
b
The following equation obeys the syntax rules for HP 35s equations:
Parentheses used to group items
Single letter
name
Optional explicit
multiplication
Division is done before
addition
The next equation also obeys the syntax rules. This equation uses the inverse
function, , instead of the fractional form, . Notice that
the SIN function is "nested" inside the INV function. (INV is typed by .)
Example: Area of a Polygon.
The equation for area of a regular polygon with n sides of length d is:
1
4
cos(π /n)
sin(π/n)
n d 2
Area =
d
2
π/n
You can specify this equation as
ππ
Notice how the operators and functions combine to give the desired equation.
You can enter the equation into the equation list using the following keystrokes:
Õ
Syntax Errors
The calculator doesn't check the syntax of an equation until you evaluate the
equation. If an error is detected, is displayed and the cursor is
displayed at the first error location. You have to edit the equation to correct the
error. (See "Editing and Clearing Equations" earlier in this chapter.)
By not checking equation syntax until evaluation, the HP 35s lets you create
"equations" that might actually be messages. This is especially useful in programs,
as described in chapter 13.
Verifying Equations
When you're viewing an equation — not while you're typing an equation — you
can press to show you two things about the equation: the equation's
checksum and its length. Hold the key to keep the values in the display.
The checksum is a four–digit hexadecimal value that uniquely identifies this
equation. If you enter the equation incorrectly, it will not have this checksum. The
length is the number of bytes of calculator memory used by the equation.
The checksum and length allow you to verify that equations you type are correct.
The checksum and length of the equation you type in an example should match the
values shown in this manual.
Example: Checksum and Length of an Equation.
Find the checksum and length for the pipe–volume equation at the beginning of this
chapter.
Keys:
Display:
Description:
π
Displays the desired equation.
( ×as required)
(hold)
Display equation's checksum
and length.
π
(release)
Redisplays the equation.
Leaves Equation mode.
7
Solving Equations
In chapter 6 you saw how you can use to find the value of the left–hand
variable in an assignment–type equation. Well, you can use SOLVE to find the value
of any variable in any type of equation.
For example, consider the equation
2
x – 3y = 10
If you know the value of y in this equation, then SOLVE can solve for the unknown x.
If you know the value of x, then SOLVE can solve for the unknown y. This works for
"word problems" just as well:
Markup × Cost = Price
If you know any two of these variables, then SOLVE can calculate the value of the
third.
When the equation has only one variable, or when known values are supplied for
all variables except one, then to solve for x is to find a root of the equation. A root
of an equation occurs where an equality or assignment equation balances exactly,
or where an expression equation equals zero.
Solving an Equation
To solve an equation (excluding built-in equations) for an unknown variable:
1. Press and display the desired equation. If necessary, type the equation
as explained in chapter 6 under "Entering Equations into the Equation List."
7-1
2. Press then press the key for the unknown variable. For example,
press X to solve for x. The equation then prompts for a value for
every other variable in the equation.
3. For each prompt, enter the desired value:
ꢀ
ꢀ
If the displayed value is the one you want, press .
If you want a different value, type or calculate the value and press .
(For details, see "Responding to Equation Prompts" in chapter 6.)
You can halt a running calculation by pressing or .
When the root is found, it's stored in the relation variable, and the variable value is
viewed in the display. In addition, the X–register contains the root, the Y–register
contains the previous estimate value or Zero, and the Z–register contains the value
of the root D-value(which should be zero).
For some complicated mathematical conditions, a definitive solution cannot be
found — and the calculator displays . See "Verifying the Result"
later in this chapter, and "Interpreting Results" and "When SOLVE Cannot Find a
Root" in appendix D.
For certain equations it helps to provide one or two initial guesses for the unknown
variable before solving the equation. This can speed up the calculation, direct the
answer toward a realistic solution, and find more than one solution, if appropriate.
See "Choosing Initial Guesses for Solve" later in this chapter.
Example: Solving the Equation of Linear Motion.
The equation of motion for a free–falling object is:
1
2
d = v t + / g t
0
2
where d is the distance, v is the initial velocity, t is the time, and g is the
0
acceleration due to gravity.
Type in the equation:
7-2
Keys:
()
Display:
Description:
Clears memory.
Ö()
Selects Equation mode.
Starts the equation.
G
_
_
Terminates the equation
and displays the left end.
Checksum and length.
g (acceleration due to gravity) is included as a variable so you can change it for
2
2
different units (9.8 m/s or 32.2 ft/s ).
Calculate how many meters an object falls in 5 seconds, starting from rest. Since
Equation mode is turned on and the desired equation is already in the display, you
can start solving for D:
Keys:
Display:
_
Description:
Prompts for unknown
variable.
Selects D; prompts for V.
value
Stores 0 in V; prompts for T.
value
Stores 5 in T; prompts for
G.
value
Stores 9.8 in G; solves for
D.
Try another calculation using the same equation: how long does it take an object to
fall 500 meters from rest?
7-3
Keys:
Display:
Description:
Displays the equation.
Solves for T; prompts for
D.
Stores 500 in D; prompts
for V.
Retains 0 in V; prompts
for G.
Retains 9.8 in G; solves
for T.
Example: Solving the Ideal Gas Law Equation.
The Ideal Gas Law describes the relationship between pressure, volume,
temperature, and the amount (moles) of an ideal gas:
P × V = N × R × T
2
where P is pressure (in atmospheres or N/m ), V is volume (in liters), N is the
number of moles of gas, R is the universal gas constant (0.0821 liter–atm/mole–K
or 8.314 J/mole–K), and T is temperature (Kelvins: K=°C + 273.1).
Enter the equation:
Keys:
Display:
Description:
P
_
Selects Equation mode
and starts the equation.
_
Terminates and displays
the equation.
Checksum and length.
7-4
A 2–liter bottle contains 0.005 moles of carbon dioxide gas at 24°C. Assuming
that the gas behaves as an ideal gas, calculate its pressure. Since Equation mode is
turned on and the desired equation is already in the display, you can start solving
for P:
Keys:
P
Display:
Description:
Solves for P; prompts for V.
value
Stores 2 in V; prompts for
N.
value
Stores .005 in N; prompts
for R.
Stores .0821 in R; prompts
for T.
value
value
Calculates T (Kelvins).
Stores 297.1 in T; solves for
P in atmospheres.
A 5–liter flask contains nitrogen gas. The pressure is 0.05 atmospheres when the
temperature is 18°C. Calculate the density of the gas (N × 28/V, where 28 is the
molecular weight of nitrogen).
Keys:
Display:
Description:
Displays the equation.
Solves for N; prompts for P.
Stores .05 in P; prompts for
V.
Stores 5 in V; prompts for
R.
Retains previous R; prompts
for T.
Calculates T (Kelvins).
7-5
Stores 291.1 in T; solves for
N.
Calculates mass in grams,
N × 28.
Calculates density in grams
per liter.
Solving built-in Equation
The built-in equations are: “2*2 lin. solve” (Ax+By=C, Dx+Ey=F) and “3*3 lin.
Solve”(Ax+By+Cz=D, Ex+Fy+Gz=H, Ix+Jy+Kz=L). If you select one of them, the
, and key will have no effect. Pressing the will
request 6 variables (A to F) for the 2*2 case or 12 variables (A to L) for the 3*3
case, and use them to find x, y for a 2*2 linear equation system or x, y and z for a
3*3 linear equation system. The result will be saved in variables x, y, and z. The
calculator can detect cases with infinitely many solutions or no solutions.
Example: solve the x,y in simultaneous equations
Keys:
Display:
Description:
Enters equation mode.
Ø
Displays the built-in
equation
Prompts for A.
value
Stores 1 in A; prompts for
B.
Stores 2 in B; prompts for
C.
Stores 5 in C; prompts for
D.
Stores 3 in D; prompts for
value
value
value
E.
value
7-6
Stores 4 in E ;prompts for F.
value
ꢂ Stores 11 in F and
calculates x and y.
ꢃ
Ø
ꢂ value of y
ꢃ
Understanding and Controlling SOLVE
SOLVE first attempts to solve the equation directly for the unknown variable. If the
attempt fails, SOLVE changes to an iterative (repetitive) procedure. The procedure
starts by evaluating the equation using two initial guesses for the unknown variable.
Based on the results with those two guesses, SOLVE generates another, better guess.
Through successive iterations, SOLVE finds a value for the unknown that makes the
value of the equation equal to zero.
When SOLVE evaluates an equation, it does it the same way does — any
"=" in the equation is treated as a " – ". For example, the Ideal Gas Law equation
is evaluated as P × V – (N × R × T). This ensures that an equality or assignment
equation balances at the root, and that an expression equation equals zero at the
root.
Some equations are more difficult to solve than others. In some cases, you need to
enter initial guesses in order to find a solution. (See "Choosing Initial Guesses for
SOLVE," below.) If SOLVE is unable to find a solution, the calculator displays
.
See appendix D for more information about how SOLVE works.
Verifying the Result
After the SOLVE calculation ends, you can verify that the result is indeed a solution
of the equation by reviewing the values left in the stack:
ꢀ
The X–register (press to clear the viewed variable) contains the solution
(root) for the unknown; that is, the value that makes the evaluation of the
equation equal to zero.
7-7
ꢀ
ꢀ
The Y–register (press ) contains the previous estimate for the root or equals
to zero. This number should be the same as the value in the X–register. If it is
not, then the root returned was only an approximation, and the values in the
X– and Y–registers bracket the root. These bracketing numbers should be
close together.
The Z– register (press again) contains D-value of the equation at the root.
For an exact root, this should be zero. If it is not zero, the root given was only
an approximation; this number should be close to zero.
If a calculation ends with the , the calculator could not converge on
a root. (You can see the value in the X–register — the final estimate of the root — by
pressing or to clear the message.) The values in the X– and Y–registers
bracket the interval that was last searched to find the root. The Z–register contains
the value of the equation at the final estimate of the root.
ꢀ
If the X– and Y–register values aren't close together, or the Z–register value
isn't close to zero, the estimate from the X–register probably isn't a root.
ꢀ
If the X– and Y–register values are close together, and the Z–register value is
close to zero, the estimate from the X–register may be an approximation to a
root.
Interrupting a SOLVE Calculation
To halt a calculation, press or , and the message “” will
be shown. The current best estimate of the root is in the unknown variable; use
to view it without disturbing the stack, but solving cannot be resumed.
Choosing Initial Guesses for SOLVE
The two initial guesses come from:
ꢀ
ꢀ
The number currently stored in the unknown variable.
The number in the X–register (the display).
7-8
These sources are used for guesses whether you enter guesses or not. If you enter
only one guess and store it in the variable, the second guess will be the same value
since the display also holds the number you just stored in the variable. (If such is the
case, the calculator changes one guess slightly so that it has two different guesses.)
Entering your own guesses has the following advantages:
ꢀ
By narrowing the range of search, guesses can reduce the time to find a
solution.
ꢀ
If there is more than one mathematical solution, guesses can direct the SOLVE
procedure to the desired answer or range of answers. For example, the
equation of linear motion
1
2
d = v t + / gt
0
2
can have two solutions for t. You can direct the answer to the required
solution by entering appropriate guesses.
The example using this equation earlier in this chapter didn't require you to
enter guesses before solving for T because in the first part of that example you
stored a value for T and solved for D. The value that was left in T was a good
(realistic) one, so it was used as a guess when solving for T.
ꢀ
If an equation does not allow certain values for the unknown, guesses can
prevent these values from occurring. For example,
y = t + log x
results in an error if x ≤ 0 (message ).
In the following example, the equation has more than one root, but guesses help
find the desired root.
7-9
Example: Using Guesses to Find a Root.
Using a rectangular piece of sheet metal 40 cm by 80 cm, form an open–top box
3
having a volume of 7500 cm . You need to find the height of the box (that is, the
amount to be folded up along each of the four sides) that gives the specified
volume. A taller box is preferred to a shorter one.
H
_
40 2H
40
H
_
H
80 2H
H
80
If H is the height, then the length of the box is (80 – 2H) and the width is (40 – 2H).
The volume V is:
V = ( 80 – 2H ) × (40 – 2H ) × H
which you can simplify and enter as
V= ( 40 – H ) × ( 20 – H ) × 4 × H
Type in the equation:
Keys:
Display:
Description:
Selects Equation mode and starts
the equation
_
4
HÕ
_
7-10 Solving Equations
4
HÕ
H
_
_
Terminates and displays the
equation.
Checksum and length.
It seems reasonable that either a tall, narrow box or a short, flat box could be
formed having the desired volume. Because the taller box is preferred, larger initial
estimates of the height are reasonable. However, heights greater than 20 cm are
not physically possible because the metal sheet is only 40 cm wide. Initial estimates
of 10 and 20 cm are therefore appropriate.
Keys:
Display:
Description:
Leaves Equation mode.
Stores lower and upper limit
guesses.
Displays current equation.
Solves for H; prompts for V.
H
_
H
value
Stores 7500 in V; solves for H.
Now check the quality of this solution — that is, whether it returned an exact root —
by looking at the value of the previous estimate of the root (in the Y–register) and the
value of the equation at the root (in the Z–register).
Keys:
Display:
Description:
This value from the Y–register is
the estimate made just prior to the
final result. Since it is the same as
the solution, the solution is an
exact root.
This value from the Z–register
shows the equation equals zero at
the root.
The dimensions of the desired box are 50 × 10 × 15 cm. If you ignored the upper
limit on the height (20 cm) and used initial estimates of 30 and 40 cm, you would
obtain a height of 42.0256 cm — a root that is physically meaningless. If you used
small initial estimates such as 0 and 10 cm, you would obtain a height of 2.9774
cm — producing an undesirably short, flat box.
If you don't know what guesses to use, you can use a graph to help understand the
behavior of the equation. Evaluate your equation for several values of the unknown.
For each point on the graph, display the equation and press — at the
prompt for x enter the x–coordinate, and then obtain the corresponding value of the
equation, the y–coordinate. For the problem above, you would always set V = 7500
and vary the value of H to produce different values for the equation. Remember that
the value for this equation is the difference between the left and right sides of the
equation. The plot of the value of this equation looks like this.
_
_
_
7500 (40 H) (20 H) 4H
20,000
H
_
10
50
_
10,000
For More Information
This chapter gives you instructions for solving for unknowns or roots over a wide
range of applications. Appendix D contains more detailed information about how
the algorithm for SOLVE works, how to interpret results, what happens when no
solution is found, and conditions that can cause incorrect results.
7-12 Solving Equations
8
Integrating Equations
Many problems in mathematics, science, and engineering require calculating the
definite integral of a function. If the function is denoted by f(x) and the interval of
integration is a to b, then the integral can be expressed mathematically as
I = b f (x)dx
∫
a
f (x)
I
x
a
b
The quantity I can be interpreted geometrically as the area of a region bounded by
the graph of the function f(x), the x–axis, and the limits x = a and x = b (provided
that f(x) is nonnegative throughout the interval of integration).
The operation (∫ FN) integrates the current equation with respect to a specified
variable (∫ d_). The function may have more than one variable.
8-1
Integrating Equations ( ∫ FN)
To integrate an equation:
1. If the equation that defines the integrand's function isn't stored in the equation
list, key it in (see "Entering Equations into the Equation List" in chapter 6) and
leave Equation mode. The equation usually contains just an expression.
2. Enter the limits of integration: key in the lower limit and press , then
key in the upper limit.
3. Display the equation: Press and, if necessary, scroll through the
equation list (press ×or Ø) to display the desired equation.
4. Select the variable of integration: Press variable. This starts the
calculation.
uses far more memory than any other operation in the calculator. If executing
causes a message, refer to appendix B.
You can halt a running integration calculation by pressing or ,and the
message “” will be shown in line 2, but the integration cannot be
resumed. However, no information about the integration is available until the
calculation finishes normally.
The display format setting affects the level of accuracy assumed for your function
and used for the result. The integration is more precise but takes much longer in the
and higher , , and settings. The uncertainty of the result ends up
in the Y–register, pushing the limits of integration up into the T– and Z–registers. For
more information, see "Accuracy of Integration" later in this chapter.
To integrate the same equation with different information:
If you use the same limits of integration, press move them into the X– and
Y–registers. Then start at step 3 in the above list. If you want to use different limits,
begin at step 2.
To work another problem using a different equation, start over from step 1 with an
equation that defines the integrand.
8-2
Example: Bessel Function.
The Bessel function of the first kind of order 0 can be expressed as
π cos(x sint)dt
1
π
J0(x) =
∫
0
Find the Bessel function for x–values of 2 and 3.
Enter the expression that defines the integrand's function:
cos (x sin t )
Keys:
Display:
Description:
Clears memory.
()Ö()
Selects Equation mode.
Types the equation.
X
ÕÕ
_
Terminates the expression and
displays its left end.
Checksum and length.
Leaves Equation mode.
Now integrate this function with respect to t from zero to π ; x = 2.
Keys:
Display:
Description:
Selects Radians mode.
9 ()
Enters the limits of integration
(lower limit first).
Displays the function.
Prompts for the variable of
integration.
∫ _
8-3
Prompts for value of X.
value
x = 2. Starts integrating;
calculates result for
∫
π f(t)
∫
0
The final result for J (2).
0
Now calculate J (3) with the same limits of integration. You must re-specify the limits
0
of integration (0, π) since they were pushed off the stack by the subsequent division
by π.
Keys:
Display:
Description:
Enters the limits of integration
(lower limit first).
Displays the current equation.
Prompts for the variable of
integration.
∫ _
Prompts for value of X.
x = 3. Starts integrating and
calculates the result for
∫
π
.
f(t)
∫
0
The final result for
J (3).
0
Example: Sine Integral.
Certain problems in communications theory (for example, pulse transmission
through idealized networks) require calculating an integral (sometimes called the
sine integral) of the form
t
sinx
x
Si (t) =
(
)dx
∫
0
Find Si (2).
8-4
Enter the expression that defines the integrand's function:
sinx
x
If the calculator attempted to evaluate this function at x = 0, the lower limit of
integration, an error ( ) would result. However, the integration
algorithm normally does not evaluate functions at either limit of integration, unless
the endpoints of the interval of integration are extremely close together or the
number of sample points is extremely large.
Keys:
Display:
Description:
Selects Equation mode.
Starts the equation.
X
The closing right parenthesis is
required in this case.
Õ
_
X
_
Terminates the equation.
Checksum and length.
Leaves Equation mode.
Now integrate this function with respect to x (that is, X) from zero to 2 (t = 2).
Keys:
Display:
Description:
Selects Radians mode.
9 ()
X
Enters limits of integration (lower
first).
_
Displays the current equation.
Calculates the result for Si(2).
X
∫
8-5
Accuracy of Integration
Since the calculator cannot compute the value of an integral exactly, it
approximates it. The accuracy of this approximation depends on the accuracy of the
integrand's function itself, as calculated by your equation. This is affected by round–
off error in the calculator and the accuracy of the empirical constants.
Integrals of functions with certain characteristics such as spikes or very rapid
oscillations might be calculated inaccurately, but the likelihood is very small. The
general characteristics of functions that can cause problems, as well as techniques
for dealing with them, are discussed in appendix E.
Specifying Accuracy
The display format's setting (FIX, SCI, ENG, or ALL) determines the precision of the
integration calculation: the greater the number of digits displayed, the greater the
precision of the calculated integral (and the greater the time required to calculate
it). The fewer the number of digits displayed, the faster the calculation, but the
calculator will presume that the function is accurate to the only number of digits
specified.
To specify the accuracy of the integration, set the display format so that the display
shows no more than the number of digits that you consider accurate in the
integrand's values. This same level of accuracy and precision will be reflected in the
result of integration.
If Fraction–display mode is on (flag 7 set), the accuracy is specified by the previous
display format.
Interpreting Accuracy
After calculating the integral, the calculator places the estimated uncertainty of that
integral's result in the Y–register. Press to view the value of the uncertainty.
For example, if the integral Si(2) is 1.6054 0.0002, then 0.0002 is its
uncertainty.
8-6
Example: Specifying Accuracy.
With the display format set to SCI 2, calculate the integral in the expression for Si(2)
(from the previous example).
Keys:
Display:
Description:
8
Sets scientific notation with two
decimal places, specifying that the
function is accurate to two decimal
places.
()
Rolls down the limits of integration
from the Z–and T–registers into the
X–and Y–registers.
Displays the current Equation.
X
The integral approximated to two
decimal places.
∫
The uncertainty of the
approximation of the integral.
The integral is 1.61 0.0161. Since the uncertainty would not affect the
approximation until its third decimal place, you can consider all the displayed digits
in this approximation to be accurate.
If the uncertainty of an approximation is larger than what you choose to tolerate,
you can increase the number of digits in the display format and repeat the
integration (provided that f(x) is still calculated accurately to the number of digits
shown in the display), In general, the uncertainty of an integration calculation
decreases by a factor of ten for each additional digit, specified in the display
format.
Example: Changing the Accuracy.
For the integral of Si(2) just calculated, specify that the result be accurate to four
decimal places instead of only two.
8-7
Keys:
Display:
Description:
8
Specifies accuracy to four decimal
places. The uncertainty from the
last example is still in the display.
()
Rolls down the limits of integration
from the Z– and T–registers into
the X– and Y–registers.
Displays the current equation.
Calculates the result.
X
∫
Note that the uncertainty is about
1/100 as large as the uncertainty
of the SCI 2 result calculated
previously.
8 ()
Restores FIX 4 format.
9 ()
Restores Degrees mode.
This uncertainty indicates that the result might be correct to only three decimal
places. In reality, this result is accurate to seven decimal places when compared
with the actual value of this integral. Since the uncertainty of a result is calculated
conservatively, the calculator's approximation in most cases is more accurate than
its uncertainty indicates.
For More Information
This chapter gives you instructions for using integration in the HP 35s over a wide
range of applications. Appendix E contains more detailed information about how
the algorithm for integration works, conditions that could cause incorrect results and
conditions that prolong calculation time, and obtaining the current approximation to
an integral.
8-8
9
Operations with Complex Numbers
The HP 35s can use complex numbers in the form
It has operations for complex arithmetic (+, –, ×, ÷), complex trigonometry (sin, cos,
z
z
2
tan), and the mathematics functions –z, 1/z,
, ln z, and e . (where z and z
z1
1
2
are complex numbers).
The form, x+yi, is only available in ALG mode.
To enter a complex number:
Form:
1. Type the real part.
2. Press6.
3. Type the imaginary part.
Form:
1. Type the real part.
2. Press
3. Type the imaginary part.
4. Press6.
Form:
1. Type the value of r.
2. Press?.
3. Type the value of θ.
The examples in this chapter all utilize RPN mode unless otherwise noted.
9-1
The Complex Stack
A complex number occupies part 1 and part 2 of a stack level. In RPN mode, the
complex number occupying part 1 and part 2 of the X-register is displayed in line 2,
while the complex number occupying part 1 and part 2 of the Y-register is
displayed in line 1.
Part3
T
Z
Y
X
Part2
Part1
Part3
Part2
Part1
Part3
X1iY1
or
Y 1 o r a 1
X 1 o r r 1
P a r t 3
(Display in line 1)
(Display in line 2)
r1θ a1
X 2 i Y 2
or
Y 2 o r a 2
X 2 o r r 2
Complex Stack
r2θ a2
Complex Result,Z
Complex Operations
Use the complex operations as you do real operations in ALG and RPN mode.
To do an operation with one complex number:
1. Enter the complex number z as described before.
2. Select the complex function.
9-2
Functions for One Complex Number, z
To Calculate: Press:
Change sign, –z
Inverse, 1/z
Natural log, ln z
Natural antilog, e
Sin z
z
Cos z
Tan z
Absolute value, ABS(z)
Argument value, ARG(z)
=
To do an arithmetic operation with two complex numbers:
1. Enter the first complex number, z as described before.
1
2. Enter the second complex number z as described before.
2
3. Select the arithmetic operation:
Arithmetic With Two Complex Numbers, z and z
1
2
To Calculate:
Addition, z + z
Press:
1
2
Subtraction, z – z
1
2
Multiplication, z × z
1
2
Division, z ÷ z
1
2
z1z2
Power function,
9-3
Examples:
Here are some examples of trigonometry and arithmetic with complex numbers:
Evaluate sin (2i3)
Keys:
Display:
Description:
Sets display format.
8 ( )
6
Result is 9.1545 i –4.1689.
Evaluate the expression
z
÷ (z + z ),
1
2
3
where z = 23 i 13, z = –2i1 z = 4 i– 3
1
2
3
Perform the calculation as
Keys:
Display:
Description:
Sets display format
ENTER z1
8 ( )
6
ENTER z2
6
(z + z ). Result is 2 i -2.
2
3
6
z
÷(z + z ). Result is 2.5
1
2
3
i 9.
Evaluate (4 i –2/5) × (3 i –2/3).
Keys:
Display:
Description:
Sets display format
Enters 4i-2/5
8 ( )
6
9-4
Enters 3i-2/3
6
Result is 11.7333i-3.8667
−2 , where z = (1i 1).
Evaluate ez
Keys:
Display:
Description:
ENTER 1i1Intermediate
result of
6
–2
Z ,result is 0i-5
Final result is
0.8776 i– 0.4794.
Using Complex Numbers in Polar Notation
Many applications use real numbers in polar form or polar notation. These forms
use pairs of numbers, as do complex numbers, so you can do arithmetic with these
numbers by using the complex operations.
i
imaginary
(a, b)
r
θ
real
Example: Vector Addition.
Add the following three loads.
9-5
y
62o
L
185 lb
2
170 lb
143o
L
1
x
L
3
100 lb
261 o
Keys:
Display:
Description:
9 ()
Sets Degrees mode.
Sets complex mode
8
()
?
Enters L
θ
1
?
?
θ
Enters L .
θ
θꢆ
θ
θꢆ
θꢆ
2
Enters L and adds L + L
2
3
3
Adds L + L + L .
1
2
3
Õ
Scrolls the screen to see the
rest of the answer
You can do a complex operation with numbers whose complex forms are different;
however, the result form is dependent on the setting in 8menu.
9-6
Evaluate 1i1+3θ 10+5θ 30
Keys:
Display:
Description:
Sets Degrees mode.
Sets complex mode
9 ()
8
()
Enters 1i1
6
θ
θ
θ
θ
θ
θ
Enters 3θ 10
?
Enters 5θ 30 and adds 3θ
10
?
Adds 1i1,result is 9.2088θ
25.8898
θ
Complex Numbers in Equations
You can type complex numbers in equations. When an equation is displayed, all
numeric forms are shown as they were entered, like xiy, or rθ a
When you evaluate an equation and are prompted for variable values, you may
enter complex numbers. The values and format of the result are controlled by the
display setting. This is the same as calculating in ALG mode.
Equations that contain complex numbers can be solved and integrated.
9-7
Complex Number in Program
In a program, you can type a complex number. For example, 1i2+3θ 10+5
θ 30 in program is:
Program lines: (ALG mode)
Description
Begins the program
When you are running a program and are prompted for values by INPUT
instructions, you can enter complex numbers. The values and format of the result
are controlled by the display setting.
The program that contains the complex number can also be solved and integrated.
9-8
10
Vector Arithmetic
From a mathematical point of view, a vector is an array of 2 or more elements
arranged into a row or a column.
Physical vectors that have two or three components and can be used to represent
physical quantities such as position, velocity, acceleration, forces, moments, linear
and angular momentum, angular velocity and acceleration, etc.
To enter a vector:
1. Press 3
2. Enter the first number for the vector.
3. Pressꢀand enter a second number for a 2-D or 3-D vector.
4. Pressꢀand enter a third number for a 3-D vector.
The HP 35s cannot handle vectors with more than 3 dimensions.
Vector operations
Addition and subtraction:
The addition and subtraction of vectors require that two vector operands have the
same length. Attempting to add or subtract vectors of different length produces the
error message “ ”.
1. Enter the first vector
2. Enter the second vector
3. Press or
Calculate [1.5,-2.2]+[-1.5,2.2]
Keys:
Display:
Description:
9()
Switches to RPN mode(if
necessary)
3
ꢀ
Enters [1.5,-2.2]
3
ꢀ
Enters [-1.5,2.2]
Adds two vectors
Calculate [-3.4,4.5]-[2.3,1.4]
Keys:
Display:
Description:
Switches to ALG mode
Enters [-3.4,4.5]
9()
3 _
ꢀÕ
Enters [2.3,1.4]
3
ꢀ
Subtracts two vectors
Multiplication and divisions by a scalar:
1. Enter a vector
2. Enter a scalar
3. Press for multiplication or for division
10-2 Vector Arithmetic
Calculate [3,4]x5
Keys:
Display:
Description:
Switches to RPN mode
Enters [3,4]
9()
3ꢀ
_
Enters 5 as a scalar
Performs multiplication
Calculate [-2,4]÷2
Keys:
9()
3
ꢀÕ
Display:
Description:
Switches to ALG mode
Enters [-2,4]
_
Enters 5 as a scalar
Performs division
Absolute value of the vector
The absolute value function “ABS”, when applied to a vector, produces the
magnitude of the vector. For a vector A=(A1, A2, …An), the magnitude is defined
2
2
A 2 + A2 + ⋅⋅⋅ + An
as
=
.
A
1
1. Press
2. Enter a vector
3. Press
For example: Absolute value of vector [5,12]:
3ꢀ.The answer is 13. In RPN mode:
9()3ꢀ.
Dot product
Function DOT is used to calculate the dot product of two vectors with the same
length. Attempting to calculate the dot product of two vectors of different length
causes an error message “ ”.
For 2-D vectors: [A, B], [C, D], dot product is defined as [A, B]ꢊ[C, D]= A x C +B x
D.
For 3-D vectors: [A, B, X], [C, D,Y], dot product is defined as [A, B, X]ꢊ[C, D, Y]= A
x C +B x D+X x Y
1. Enter the first Vector
2. Press
3. Enter the second vector
4. Press
Note: The sign, ,here means ”dot product” instead of “cross product”. For cross
product, see chapter 17.
Calculate the dot product of two vectors, [1,2] and [3,4]
Keys:
Display:
Description:
Switches to ALG mode
9()
Enters the first vector [1,2]
3ꢀ _
Õ
Executes for dot product,
and enters the second vector
The dot product of two
vectors is 11
3ꢀ
Calculate the dot product of two vectors, [9,5] and [2.2]
Keys:
Display:
Description:
Switches to RPN mode
Enters the first vector [9,5]
9()
3ꢀ
and enters the second vector
[2,2]
3ꢀ
10-4 Vector Arithmetic
Presses for dot product
,and the dot product of two
vectors is 28
Angle between vectors
The angle between two vectors, A and B, can be found as θ =
ACOS(AꢊB/ A B )
Find the angle between two vectors: A=[1,0],B=[0,1]
Keys:
Display:
Description:
Switches to ALG mode
Sets Degrees mode
Arc cosine function
Enters vector A [1,0]
9()
9 ()
3ꢀ
Õ
Enters vector B [0,1] for dot
3ꢀ
Õ
product of A and B
Finds the magnitude of
vector A [1,0]
3
ꢀÕ
ꢆ
Finds the magnitude of
vector B [0,1]
3
ꢀ
ꢆ
The angle between two
vectors is 90
Find the angle between two vectors: A=[3,4],B=[0,5]
Keys:
Display:
Description:
Switches to RPN mode
Sets Degrees mode
Finds the dot product of
two vectors
9()
9()
3ꢀ
3
ꢀ
3ꢀ
Finds the magnitude of
vector [3,4]
3ꢀ
Finds the magnitude of
vector [0,5]
Multiplies two vectors
Divides two values
The angle between two
vectors is 36.8699
Vectors in Equations
Vectors can be used in equations and in equation variables exactly like real
numbers. A vector can be entered when prompted for a variable.
Equations containing vectors can be solved, however the solver has limited ability if
the unknown is a vector.
Equations containing vectors can be integrated, however the result of the equation
nd
rd
must be a real or a 1-D vector or a vector with 0 as the 2 and 3 elements.
10-6 Vector Arithmetic
Vectors in Programs
Vectors can be used in program in the same way as real and complex numbers
For example, [5, 6] +2 x [7, 8] x [9, 10] in a program is:
Program lines:
Description:
Begins the program
[5,6]
A vector can be entered when prompted for a value for a variable. Programs that
contain vectors can be used for solving and integrating.
Creating Vectors from Variables or Registers
It is possible to create vectors containing the contents of memory variables, stack
registers, or values from the indirect registers, in run or program modes.
In ALG mode, begin entering the vector by pressing 3. RPN mode works
similarly to ALG mode, except that the dkey must be pressed first, followed by
pressing 3 .
To enter an element containing the value stored in a lettered variable, press h
and the variable letter.
To enter an element from a stack register, press the <key and use the Õor Ö
keys to move the underline symbol so that it is under the stack register to be used
and press
To enter an element indirectly indicated by the value in the I or J register, press
hand either (I) or (J).
For example, to construct the vector [ C, REGZ, (J) ] in RPN mode, press d
3, then hCꢀ<Õꢀh A.
10-8 Vector Arithmetic
11
Base Conversions and Arithmetic and
Logic
The BASE menu ( ) allows you to enter numbers and force the display of
numbers in decimal, binary, octal and hexadecimal base.
The LOGIC menu(>) provides access to logic functions.
BASE Menu
Menu label
Description
Decimal mode. This is the normal calculator mode
Hexadecimal mode. The HEX annunciator is displayed
when this mode is active. Numbers are displayed in
hexadecimal format. In RPN mode, the keys , ,
, , and act as shortcut to enter the
digits A to F. In ALG mode, press A, B, C, D, E or F
to enter the digits A to F.
Octal mode. The OCT annunciator is displayed when this
mode is active. Numbers are displayed in Octal format.
Binary mode. The BIN annunciator is displayed when
this mode is active. Numbers are displayed in Binary
format. If a number has more than 12 digits, the Õ
and Ökeys allow to view the full number (See
"Windows for Long Binary Numbers" later in this chapter.)
placed at the end of a number means that this number is a
decimal number
placed at the end of a number means that this number is
an hexadecimal number. To enter an hexadecimal
number, type the number followed by “”
placed at the end of a number means that this number is
an octal number. To enter an octal number, type the
number followed by “”
placed at the end of a number means that this number is a
binary number. To enter a binary number, type the
number followed by “”
Examples: Converting the Base of a Number.
The following keystrokes do various base conversions.
Convert 125.99 to hexadecimal, octal, and binary numbers.
10
Keys:
Display:
Description:
Converts the decimal number to
base 16.
Base 8.
Base 2.
()
()
()
()
Note: When non decimal bases are use, only the integer part of numbers are used
for display. The fractional parts are kept (unless operations are performed that erase
them) and will be displayed if the decimal base is selected.
Convert 24FF to binary base. The binary number will be more than 14 digits (the
16
maximum display) long.
Keys:
Display:
Description:
Use the key to type "F".
()
()
The entire binary number does
()
not fit. The ꢆ annunciator
indicates that the number
continues to the right.
ꢆ
Displays the rest of the number.
The full number is
Õ
10010011111111 .
b
Displays the first 14 digits
again.
Ö
ꢆ
Restores base 10.
()
you can use menu to enter base-n sign b/o/d/h following the operand to
represent 2/8/10/16 base number in any base mode. A number without a base
sign is a decimal number
Note:
In ALG mode:
1. The result’s base mode is determined by the current base mode setting.
2. If there is no active command line (there is no blinking cursor on line 1),
changing the base will update line 2 to be in the new base.
3. After pressing or changing the base mode, calculator will
automatically add a current base sign b/o/h following the result to represent
base 2/8/16 number in line 2.
4. To edit expression again, press Öor Õ
In RPN mode:
When you enter a number in line 2, press , and then change the base
mode, the calculator will convert the base of the numbers in line 1 and line 2, and
the sign b/o/h will be added following the number to represent base 2/8/16.
To view the next screen’s content in line 2, press Öor Õto change the
screen.
LOGIC Menu
Description
Menu label
Logical bit-by-bit "AND" of two arguments.
For example: AND(1100b,1010b)=1000b
Logical bit-by-bit "XOR" of two arguments.
For example: XOR(1101b,1011b)=110b
Logical bit-by-bit "OR" of two arguments.
For example: OR(1100b,1010b)=1110b
Returns the one's complement of the argument. Each bit in
the result is the complement of the corresponding bit in the
argument.
For example: NOT(1011b)=
111111111111111111111111111111110100b
Logical bit-by-bit "NAND" of two arguments.
For example:
NAND(1100b,1010b)=11111111111111111111111
1111111110111b
Logical bit-by-bit "NOR" of two arguments.
For example: NOR(1100b,1010b)=
111111111111111111111111111111110001b
The “AND”, “OR”, “XOR”, “NOT”, “NAND”, “NOR” can be used as logic
functions. Fraction, complex, vector arguments will be seen as an "
" in logic function.
Arithmetic in Bases 2, 8, and 16
You can perform arithmetic operations using , , , and in any base.
The only function keys that are actually deactivated in HEX mode are , ,
, , , and . However, you should realize that most operations other
than arithmetic will not produce meaningful results since the fractional parts of
numbers are truncated.
Arithmetic in bases 2, 8, and 16 is in 2's complement form and uses integers only:
ꢀ
If a number has a fractional part, only the integer part is used for an
arithmetic calculation.
ꢀ
The result of an operation is always an integer (any fractional portion is
truncated).
Whereas conversions change only the display of the number but not the actual
number in the X–register, arithmetic does alter the number in the X–register.
If the result of an operation cannot be represented in valid bits, the display shows
and then shows the largest positive or negative number possible.
Example:
Here are some examples of arithmetic in Hexadecimal, Octal, and Binary modes:
12F + E9A
= ?
16
16
Keys:
Display:
Description:
Sets base 16; HEX
()
annunciator on.
Result.
()
()
7760 – 4326 =?
8
8
Sets base 8; OCT
annunciator on. Converts
displayed number to octal.
Result.
()
()
()
100 ÷ 5 =?
8
8
Integer part of result.
()
()
5A0 + 1001100 =?
16
2
Sets base 16; HEX
annunciator on.
()
()
Changes to base 2; BIN
annunciator on. This
terminates digit entry, so no
()
()
b
is needed between
the numbers.
Result in binary base.
Result in hexadecimal base.
Restores decimal base.
()
()
The Representation of Numbers
Although the display of a number is converted when the base is changed, its stored
form is not modified, so decimal numbers are not truncated — until they are used in
arithmetic calculations.
When a number appears in hexadecimal, octal, or binary base, it is shown 36 bits
(12 octal digits or 9 hexadecimal digits). Leading zeros are not displayed, but they
are important because they indicate a positive number. For example, the binary
representation of 125 is displayed as:
10
1111101b
which is the same as these 36 digits:
000000000000000000000000000001111101b
Negative Numbers
The leftmost (most significant or "highest") bit of a number's binary representation is
the sign bit; it is set (1) for negative numbers. If there are (undisplayed) leading
zeros, then the sign bit is 0 (positive). A negative number is the 2's complement of
its positive binary number.
Keys:
Display:
Description:
Enters a positive, decimal
number; then converts it to
hexadecimal.
()
2's complement (sign
changed).
Binary version; ꢆ indicates
()
ꢆ
more digits. The number is
negative since the highest bit
is 1.
Displays the rest of the
number by scrolling one
screen
Õ
ꢆ
Displays the rightmost
window;
Õ
Negative decimal number.
()
Range of Numbers
The 36-bit binary number size determines the range of numbers that can be
represented in hexadecimal (9 digits), octal (12 digits), and binary bases (36
digits), and the range of decimal numbers (11 digits) that can be converted to these
other bases.
Range of Numbers for Base Conversions
Base
Positive Integer
of Largest Magnitude
Negative Integer
of Largest Magnitude
Hexadecimal
Octal
7FFFFFFFFh
800000000h
377777777777o
400000000000o
Binary
0111111111111111111111 10000000000000000000000
11111111111111b
34,359,738,367
0000000000000b
–34,359,738,368
Decimal
Numbers outside of this range can not be entered when a non decimal base is
selected.
In BIN/OCT/HEX, If a number entered in decimal base is outside the range given
above, then it produces the message . Any operation using
causes an overflow condition, which substitutes the largest positive or negative
number possible for the too-big number.
Windows for Long Binary Numbers
The longest binary number can have 36 digits. Each 14–digit display of a long
number is called a window.
36-bit number
Highest Window
(Displayed)
Lowest Window
When a binary number is larger than the 14 digits, the or ꢆ annunciator (or
both) appears, indicating in which direction the additional digits lie. Press the
indicated key (Öor Õ) to view the obscured window.
Press to display left
window
Press to display right
window
Ö
Õ
ꢆ
Using base in program and equations
Equations and program are affected by the base setting and binary, octal and
hexadecimal numbers can be entered in equation and in program as well as when
the calculator prompts for a variable. Results will be displayed according to the
current base.
12
Statistical Operations
The statistics menus in the HP 35s provide functions to statistically analyze a set of
one– or two–variable data(real numbers):
ꢀ
ꢀ
Mean, sample and population standard deviations.
Linear regression and linear estimation (
and ).
ˆ
ˆ
x
y
ꢀ
ꢀ
Weighted mean (x weighted by y).
2
2
Summation statistics: n, Σx, Σy, Σx , Σy , and Σxy.
Entering Statistical Data
One– and two–variable statistical data are entered (or deleted) in similar fashion
using the (or ) key. Data values are accumulated as summation
statistics in six statistics registers (-27 through -32), whose names are displayed in
the SUMS menu. (Press and see ).
Always clear the statistics registers before entering a new set of
Note
statistical data (press
()).
Entering One–Variable Data
1. Press
()to clear existing statistical data.
2. Key in each x–value and press .
3. The display shows n, the number of statistical data values now accumulated.
Pressing actually enters two variables into the statistics registers because the
value already in the Y–register is accumulated as the y–value. For this reason, the
calculator will perform linear regression and show you values based on y even
when you have entered only x–data — or even if you have entered an unequal
number of x–and y–values. No error occurs, but the results are obviously not
meaningful.
To recall a value to the display immediately after it has been entered, press
.
Entering Two–Variable Data
nd
If the data is a pair of variables, enter first the dependent variable (the 2 variable
of the pair) and press , and then enter the independent variable (the first
variable of the pair) and press .
1. Press
() to clear existing statistical data.
2. Key in the y–value first and press .
3. Key in the corresponding x–value and press .
4. The display shows n, the number of statistical data pairs you have
accumulated.
5. Continue entering x, y–pairs. n is updated with each entry.
To recall an x–value to the display immediately after it has been entered, press
.
Correcting Errors in Data Entry
If you make a mistake when entering statistical data, delete the incorrect data and
add the correct data. Even if only one value of an x, y–pair is incorrect, you must
delete and reenter both values.
To correct statistical data:
1. Reenter the incorrect data, but instead of pressing , press . This
deletes the value(s) and decrements n.
2. Enter the correct value(s) using .
If the incorrect values were the ones just entered, press to retrieve
them, then press to delete them. (The incorrect y–value was still in the Y–
register, and its x–value was saved in the LAST X register.) After deleting the
incorrect statistical data, calculator will display the value of Y-register in line 1 and
value of n in line 2.
Example:
Key in the x, y–values on the left, then make the corrections shown on the right:
Initial x, y
20, 4
Corrected x, y
20, 5
400, 6
40, 6
Keys:
()
Display:
Description:
Clears existing statistical
data.
Enters the first new data pair.
Display shows n, the number
of data pairs you entered.
Brings back last x–value. Last
y is still in Y–register.
Deletes the last data pair.
Reenters the last data pair.
Deletes the first data pair.
Reenters the first data pair.
There is still a total of two
data pairs in the statistics
registers.
Statistical Calculations
Once you have entered your data, you can use the functions in the statistics menus.
Statistics Menus
Menu
L.R.
Key
Description
The linear–regression menu: linear estimation
ˆ ˆ and curve–fitting . See ''Linear
Regression'' later in this chapter.
,
y
The mean menu: . See "Mean"
below.
x
The standard–deviation menu: σ σ.
See "Sample Standard Deviation" and
"Population Standard Deviation" later in this
chapter.
s,σ
The summation menu:
SUMS
. See "Summation Statistics" later in this
chapter.
Mean
Mean is the arithmetic average of a group of numbers.
ꢀ
ꢀ
ꢀ
Press ( ) for the mean of the x–values.
Press Õ( ) for the mean of the y–values.
Press ÕÕ( ) for the weighted mean of the x–values using
the y–values as weights or frequencies. The weights can be integers or non–
integers.
Example: Mean (One Variable).
Production supervisor May Kitt wants to determine the average time that a certain
process takes. She randomly picks six people, observes each one as he or she
carries out the process, and records the time required (in minutes):
15.5
12.5
9.25
12.0
10.0
8.5
Calculate the mean of the times. (Treat all data as x–values.)
Keys:
Display:
Description:
Clears the statistics registers.
Enters the first time.
()
Enters the remaining data; six
data points accumulated.
Calculates the mean time to
complete the process.
( )
Example: Weighted Mean (Two Variables).
A manufacturing company purchases a certain part four times a year. Last year's
purchases were:
Price per Part (x)
Number of Parts (y)
$4.25
250
$4.60
800
$4.70
900
$4.10
1000
Find the average price (weighted for the purchase quantity) for this part. Remember
to enter y, the weight (frequency), before x, the price.
Keys:
()
Display:
Description:
Clears the statistics
registers.
Enters data; displays n.
Four data pairs
accumulated.
Calculates the mean price
weighted for the quantity
purchased.
ÕÕ( )
Sample Standard Deviation
Sample standard deviation is a measure of how dispersed the data values are
about the mean sample standard deviation assumes the data is a sampling of a
larger, complete set of data, and is calculated using n – 1 as a divisor.
ꢀ
ꢀ
Press () for the standard deviation of x–values.
Press Õ() for the standard deviation of y–values.
The (σ) and (σ) items in this menu are described in the next section, "Population
Standard Deviation."
Example: Sample Standard Deviation.
Using the same process–times as in the above "mean" example, May Kitt now
wants to determine the standard deviation time (s ) of the process:
x
15.5
12.5
9.25
12.0
10.0
8.5
Calculate the standard deviation of the times. (Treat all the data as x–values.)
Keys:
Display:
Description:
Clears the statistics registers.
Enters the first time.
Enters the remaining data; six
()
data points entered.
Calculates the standard deviation
()
time.
Population Standard Deviation
Population standard deviation is a measure of how dispersed the data values are
about the mean. Population standard deviation assumes the data constitutes the
complete set of data, and is calculated using n as a divisor.
ꢀ
Press ÕÕ(σ) for the population standard deviation of the x–
values.
ꢀ
Press ÕÕÕ(σ) for the population standard deviation of
the y–values.
Example: Population Standard Deviation.
Grandma Hinkle has four grown sons with heights of 170, 173, 174, and 180 cm.
Find the population standard deviation of their heights.
Keys:
Display:
Description:
Clears the statistics registers.
Enters data. Four data points
accumulated.
()
Calculates the population
ÕÕ(σ)
standard deviation.
Linear Regression
Linear regression, L.R. (also called linear estimation) is a statistical method for
finding a straight line that best fits a set of x,y–data.
To avoid a message, enter your data before
executing any of the functions in the L.R. menu.
Note
L.R. (Linear Regression) Menu
Description
Menu Key
Estimates (predicts) x for a given hypothetical value of y,
based on the line calculated to fit the data.
ˆ
Estimates (predicts) y for a given hypothetical value of x,
based on the line calculated to fit the data.
ˆ
Correlation coefficient for the (x, y) data. The correlation
coefficient is a number in the range –1 through +1 that
measures how closely the calculated line fits the data.
Slope of the calculated line.
y–intercept of the calculated line.
ꢀ
ꢀ
To find an estimated value for x (or y), key in a given hypothetical value for y
(or x), then press ( ˆ ) (or Õ(
).
ˆ
To find the values that define the line that best fits your data, press
followed by , , or .
Example: Curve Fitting.
The yield of a new variety of rice depends on its rate of fertilization with nitrogen.
For the following data, determine the linear relationship: the correlation coefficient,
the slope, and the y–intercept.
X, Nitrogen Applied
(kg per hectare)
Y, Grain Yield
0.00
4.63
20.00
5.78
40.00
6.61
60.00
7.21
80.00
7.78
(metric tons per hectare)
Keys:
Display:
Description:
Clears all previous statistical
()
data.
Enters data; displays n.
Five data pairs entered.
ÕÕ()
Displays linear–regression
menu.
ˆ
ˆ
Correlation coefficient; data
closely approximate a straight
line.
Õ
Õ
ˆ
Slope of the line.
ˆ
y–intercept.
ˆ
ˆ
y
8.50
7.50
X
(70, y)
r = 0.9880
6.50
5.50
m = 0.0387
b = 4.8560
20
x
4.50
0
40
60
80
What if 70 kg of nitrogen fertilizer were applied to the rice field? Predict the grain
yield based on the above statistics.
Keys:
Display:
_
Description:
Enters hypothetical x–value.
The predicted yield in tons per
hectare.
ˆ
ˆ
Õ(
)
ˆ
Limitations on Precision of Data
Since the calculator uses finite precision, it follows that there are limitations to
calculations due to rounding. Here are two examples:
Normalizing Close, Large Numbers
The calculator might be unable to correctly calculate the standard deviation and
linear regression for a variable whose data values differ by a relatively small
amount. To avoid this, normalize the data by entering each value as the difference
from one central value (such as the mean). For normalized x–values, this difference
ˆ
, and y
must then be added back to the calculation of
and
and b must also
ˆ
x
x
be adjusted. For example, if your x–values were 7776999, 7777000, and
7777001, you should enter the data as –1, 0, and 1; then add 7777000 back to
ˆ, be sure to supply an
y
and ˆ . For b, add back 7777000 × m. To calculate
x
x
x–value that is less 7777000.
Similar inaccuracies can result if your x and y values have greatly different
magnitudes. Again, scaling the data can avoid this problem.
Effect of Deleted Data
Executing does not delete any rounding errors that might have been
generated in the statistics registers by the original data values. This difference is not
serious unless the incorrect data have a magnitude that is enormous compared with
the correct data; in such a case, it would be wise to clear and reenter all the data.
12-10 Statistical Operations
Summation Values and the Statistics Registers
The statistics registers are six unique locations in memory that store the
accumulation of the six summation values.
Summation Statistics
Pressing gives you access to the contents of the statistics registers:
ꢀ
ꢀ
ꢀ
ꢀ
() to recall the number of accumulated data sets.
Press Õ() to recall the sum of the x–values.
Press ÕÕ() to recall the sum of the y–values.
Press ÕÕÕ( ), ÕÕÕÕ( ), and
ÕÕÕÕÕ() to recall the sums of the squares and the sum of
the products of the x and y — values that are of interest when performing
other statistical calculations in addition to those provided by the calculator.
If you've entered statistical data, you can see the contents of the statistics registers.
Press (), then use ×and Øto view the statistics
registers.
Example: Viewing the Statistics Registers.
Use to store data pairs (1,2) and (3,4) in the statistics registers. Then view the
stored statistical values.
Keys:
()
Display:
Description:
Clears the statistics registers.
Stores the first data pair (1,2).
Stores the second data pair (3,4).
ꢂ Displays VAR catalog and views n
ꢃ register.
()
×
ꢂ views Σxy register.
ꢃ
2
Views Σy register.
×
×
ꢂ
ꢃ
ꢂ
ꢃ
2
Views Σx register.
ꢂ Views Σy register.
ꢃ
ꢂ Views Σx register.
×
×
ꢃ
ꢂ Views n register.
×
ꢃ
Leaves VAR catalog.
Access to the Statistics Registers
The statistics register assignments in the HP 35s are shown in the following table.
Summation registers should be referred to by names and not by numbers in
expression, equations and programs.
Statistics Registers
Register
Number
-27
Description
Number of accumulated data pairs.
Sum of accumulated x–values.
Sum of accumulated y–values.
Sum of squares of accumulated x–values.
Sum of squares of accumulated y–values.
Sum of products of accumulated x– and y–
values.
n
Σx
Σy
-28
-29
-30
2
Σx
2
Σy
-31
Σxy
-32
12-12 Statistical Operations
You can load a statistics register with a summation by storing the number (-27
through -32) of the register you want in I or J and then storing the summation (value
7 or A). Similarly, you can press 7 or A (or
7 or A ) to view (or recall)a register value — the display is labeled with
the register name. The SUMS menu contains functions for recalling the register
values. See "Indirectly Addressing Variables and Labels" in chapter 14 for more
information.
13
Simple Programming
Part 1 of this manual introduced you to functions and operations that you can use
manually, that is, by pressing a key for each individual operation. And you saw
how you can use equations to repeat calculations without doing all of the keystrokes
each time.
In part 2, you'll learn how you can use programs for repetitive calculations —
calculations that may involve more input or output control or more intricate logic. A
program lets you repeat operations and calculations in the precise manner you
want.
In this chapter you will learn how to program a series of operations. In the next
chapter, "Programming Techniques," you will learn about subroutines and
conditional instructions.
Example: A Simple Program.
To find the area of a circle with a radius of 5, you would use the
2
formula A = π r and press
RPN mode: 5
ALG mode: 5
to get the result for this circle, 78.5398.
But what if you wanted to find the area of many different circles?
Rather than repeat the given keystrokes each time (varying only the "5" for the
different radii), you can put the repeatable keystrokes into a program:
RPN mode
ALG mode
π
π
This very simple program assumes that the value for the radius is in the X– register
(the display) when the program starts to run. It computes the area and leaves it in
the X–register.
In RPN mode, to enter this program into program memory, do the following:
Keys:
Display:
Description:
(In RPN mode)
Clears memory.
()Ö()
Activates Program–entry mode
(PRGM annunciator on).
Resets program pointer to PRGM
TOP.
(Radius)
2
π
2
Area = πx
Exits Program–entry mode.
Try running this program to find the area of a circle with a radius of 5:
Keys:
Display:
Description:
(In RPN mode)
This sets the program to its
beginning.
The answer!
5
In ALG mode, to enter this program into program memory, do the following:
Keys:
(In ALG mode)
Display:
Description:
Clears memory.
()Ö()
Activates Program–entry mode
(PRGM annunciator on).
13-2 Simple Programming
Resets program pointer to PRGM
TOP.
2
π
Area = πx
XÕ
Exits Program–entry mode.
Try running this program to find the area of a circle with a radius of 5:
Keys:
Display:
Description:
(In ALG mode)
This sets the program to its
beginning.
Stores 5 into X
X
The answer!
We will continue using the above program for the area of a circle to illustrate
programming concepts and methods.
Designing a Program
The following topics show what instructions you can put in a program. What you put
in a program affects how it appears when you view it and how it works when you
run it.
Selecting a Mode
Programs created and saved in RPN mode should be edited and executed in RPN
mode, and programs or steps created and saved in ALG mode should be edited
and executed in ALG mode. If not, the result may be incorrect.
Program Boundaries (LBL and RTN)
If you want more than one program stored in program memory, then a program
needs a label to mark its beginning (such as ) and a return to mark its
end (such as ).
Notice that the line numbers acquire an to match their label.
Program Labels
Programs and segments of programs (called routines) should start with a label. To
record a label, press:
letter–key
The label is a single letter from A through Z. The letter keys are used as they are for
variables (as discussed in chapter 3). You cannot assign the same label more than
once (this causes the message ), but a label can use the same
letter that a variable uses.
It is possible to have one program (the top one) in memory without any label.
However, adjacent programs need a label between them to keep them distinct.
Programs can not have more than 999 lines.
Program Returns
Programs and subroutines should end with a return instruction. The keystrokes are:
When a program finishes running, the last RTN instruction returns the program
pointer to , the top of program memory.
Using RPN, ALG and Equations in Programs
You can calculate in programs the same ways you calculate on the keyboard:
13-4 Simple Programming
ꢀ
ꢀ
ꢀ
Using RPN operations (which work with the stack, as explained in chapter 2).
Using ALG operations (as explained in appendix C).
Using equations (as explained in chapter 6).
The previous example used a series of RPN operations to calculate the area of the
circle. Instead, you could have used an equation in the program. (An example
follows later in this chapter.) Many programs are a combination of RPN and
equations, using the strengths of both.
Strengths of RPN Operations
Strengths of Equations and
ALG Operations
Use less memory.
Execute faster.
Easier to write and read.
Can automatically prompt.
When a program executes a line containing an equation, the equation is evaluated
in the same way that evaluates an equation in the equation list. For program
evaluation, "=" in an equation is essentially treated as "–". (There's no
programmable equivalent to for an assignment equation — other than
writing the equation as an expression, then using STO to store the value in a
variable.)
For both types of calculations, you can include RPN instructions to control input,
output, and program flow.
Data Input and Output
For programs that need more than one input or return more than one output, you
can decide how you want the program to enter and return information.
For input, you can prompt for a variable with the INPUT instruction, you can get an
equation to prompt for its variables, or you can take values entered in advance onto
the stack.
For output, you can display a variable with the VIEW instruction, you can display a
message derived from an equation, you can display process in line 1, you can
display the program result in line 2, or you can leave unmarked values on the stack.
These are covered later in this chapter under "Entering and Displaying Data."
Entering a Program
Pressing toggles the calculator into and out of Program–entry mode —
turns the PRGM annunciator on and off. Keystrokes in Program–entry mode are
stored as program lines in memory. Each instruction (command) or expression
occupies one program line. In ALG mode, you can enter an expression directly in a
program
To enter a program into memory:
1. Press to activate Program–entry mode.
2. Press to display . This sets the program pointer to a
known spot, before any other programs. As you enter program lines, they are
inserted before all other program lines.
If you don't need any other programs that might be in memory, clear program
memory by pressing
(). To confirm that you want all
programs deleted, press Ö() after the message .
3. Give the program a label — a single letter, A through Z. Press letter.
Choose a letter that will remind you of the program, such as "A" for "area."
If the message is displayed, use a different letter. You can
clear the existing program instead — press (), use ×or
Øto find the label, and press
and .
4. To record calculator operations as program instructions, press the same keys
you would to do an operation manually. Remember that many functions don't
appear on the keyboard but must be accessed using menus.
To enter an equation in a program line, see the instructions below.
13-6 Simple Programming
5. End the program with a return instruction, which sets the program pointer back
to after the program runs. Press .
6. Press (or ) to cancel program entry.
Numbers in program lines are stored precisely as you entered them, and they're
displayed using ALL or SCI format. (If a long number is shortened in the display,
press to view all digits.)
To enter an equation in a program line:
1. Press to activate Equation–entry mode. The EQN annunciator turns on.
2. Enter the equation as you would in the equation list. See chapter 6 for details.
Use to correct errors as you type.
3. Press to terminate the equation and display its left end. (The equation
does not become part of the equation list.)
After you've entered an equation, you can press to see its checksum
and length. Hold the key to keep the values in the display.
For a long equation, the ꢆ and annunciators show that scrolling is active for
this program line. You can use Öand Õto scroll the display.
Clear functions and backspace key
Note these special conditions during program entry:
ꢀ
ꢀ
always cancels program entry. It never clears a number to zero.
In program line view status, deletes the current program line and Ö/
Õbegins the edit status. In program line edit status, deletes a
character before the cursor.
ꢀ
To program a function to clear the X–register, use
().
When you insert or erase a line in a program, GTO and XEQ statements are
automatically updated if needed.
For example:
Now, erase line A002, and line A004 changes to “A003 GTO A002”
Function Names in Programs
The name of a function that is used in a program line is not necessarily the same as
the function's name on its key, in its menu, or in an equation. The name that is used
in a program is usually a fuller abbreviation than that which can fit on a key or in a
menu.
Example: Entering a Labeled Program.
The following keystrokes delete the previous program for the area of a circle and
enter a new one that includes a label and a return instruction. If you make a mistake
during entry, press to delete the current program line, then reenter the line
correctly.
Keys:
Display:
Description:
(In RPN mode)
Activates Program–entry
mode (PRGM on).
Clears all of program
memory.
() Ö()
A
Labels this program routine
A (for "area").
Enters the three program
lines.
π
Ends the program.
Displays label A and the
length of the program in
(2)
bytes.
Checksum and length of
program.
13-8 Simple Programming
Cancels program entry
(PRGM annunciator off).
A different checksum means the program was not entered exactly as given here.
Example: Entering a Program with an Equation.
The following program calculates the area of a circle using an equation, rather than
using RPN operations like the previous program.
Keys:
Display:
Description:
(In RPN mode)
Activates Program–entry
mode; sets pointer to top of
memory.
Labels this program routine
E (for "equation").
E
Stores radius in variable R
R
Selects Equation–entry
mode; enters the equation;
returns to Program–entry
mode.
R
π
Ends the program.
Displays label E and the
length of the program in
(2)
bytes.
Checksum and length of
program.
Cancels program entry.
Running a Program
To run or execute a program, program entry cannot be active (no program–line
numbers displayed; PRGM off). Pressing will cancel Program–entry mode.
Executing a Program (XEQ)
Press label to execute the program labeled with that letter:
To execute a program from it’s beginning press label . For example,
press A. The display will show ” ” and execution will
start at the top of Label A.
You can also execute a program starting at another position by pressing
label Line number, for example .
If there is only one program in memory, you can also execute it after moving pointer
to the top of the program line and pressing (run / stop) key. The PRGM
annunciator displays and the annunciator turns on while the program is running.
If necessary, enter the data before executing the program.
Example:
Run the programs labeled A and E to find the areas of three different circles with
radii of 5, 2.5, and 2π. Remember to enter the radius before executing A or E.
Keys:
Display:
Description:
(In RPN mode)
A
Enters the radius, then starts
program A. The resulting area is
displayed.
Calculates area of the second
circle using program E.
E
Calculates area of the third circle.
A
13-10 Simple Programming
Testing a Program
If you know there is an error in a program, but are not sure where the error is, then
a good way to test the program is by stepwise execution. It is also a good idea to
test a long or complicated program before relying on it. By stepping through its
execution, one line at a time, you can see the result after each program line is
executed, so you can verify the progress of known data whose correct results are
also known.
1. As for regular execution, make sure program entry is not active (PRGM
annunciator off).
2. Set the program pointer to the start of the program (that is, at its LBL
instruction). The instruction moves the program pointer without starting
execution.
3. Press and hold Ø. This displays the current program line. When you release
Ø, the line is executed. The result of that execution is then displayed (it is in
the X–register).
To move to the preceding line, you can press ×. No execution occurs.
4. The program pointer moves to the next line. Repeat step 3 until you find an
error (an incorrect result occurs) or reach the end of the program.
If Program–entry mode is active, then Øor ×simply changes the program
pointer, without executing lines. Holding down a cursor key during program entry
makes the lines roll by automatically.
Example: Testing a Program.
Step through the execution of the program labeled A. Use a radius of 5 for the test
data. Check that Program–entry mode is not active before you start:
Keys:
Display:
Description:
(In RPN mode)
Moves program counter to label A.
Ø(hold) (release)
Squares input.
Ø(hold) (release)
π
Value of π.
Ø(hold) (release)
Ø(hold) (release)
Ø(hold) (release)
25π.
End of program. Result is correct.
Entering and Displaying Data
The calculator's variables are used to store data input, intermediate results, and
final results. (Variables, as explained in chapter 3, are identified by a letter from A
through Z, but the variable names have nothing to do with program labels.)
In a program, you can get data in these ways:
ꢀ
From an INPUT instruction, which prompts for the value of a variable. (This is
the most handy technique.)
ꢀ
ꢀ
ꢀ
From the stack. (You can use STO to store the value in a variable for later use.)
From variables that already have values stored.
From automatic equation prompting (if enabled by flag 11 set).
(This is also handy if you're using equations.)
In a program, you can display information in these ways:
ꢀ
ꢀ
ꢀ
With a VIEW instruction, which shows the name and value of a variable.
(This is the most handy technique.)
On the stack - only the values in the X and Y registers are visible. (You can use
PSE for a 1-second look at the X and Y registers.)
In a displayed equation (if enabled by flag 10 set). (The "equation" is usually
a message, not a true equation.)
Some of these input and output techniques are described in the following topics.
13-12 Simple Programming
Using INPUT for Entering Data
The INPUT instruction ( Variable ) stops a running program and
displays a prompt for the given variable. This display includes the existing value for
the variable, such as
where
"R" is the variable's name,
"?" is the prompt for information, and
0.0000 is the current value stored in the variable.
Press (run/stop) to resume the program. The value you keyed in then writes
over the contents of the X–register and is stored in the given variable. If you have not
changed the displayed value, then that value is retained in the X–register.
The area–of–a–circle program with an INPUT instruction looks like this:
RPN mode
ALG mode
π
π
To use the INPUT function in a program:
1. Decide which data values you will need, and assign them names.
(In the area–of–a–circle example, the only input needed is the radius, which we
can assign to R.)
2. In the beginning of the program, insert an INPUT instruction for each variable
whose value you will need. Later in the program, when you write the part of the
calculation that needs a given value, insert a variable instruction to bring
that value back into the stack.
Since the INPUT instruction also leaves the value you just entered in the
Xñregister, you don't have to recall the variable at a later time ó you could
INPUT it and use it when you need it. You might be able to save some memory
space this way. However, in a long program it is simpler to just input all your
data up front, and then recall individual variables as you need them.
Remember also that the user of the program can do calculations while the
program is stopped, waiting for input. This can alter the contents of the stack,
which might affect the next calculation to be done by the program. Thus the
program should not assume that the X–, Y–, and Zñregisters' contents will be
the same before and after the INPUT instruction. If you collect all the data in the
beginning and then recall them when needed for calculation, then this prevents
the stack's contents from being altered just before a calculation.
To respond to a prompt:
When you run the program, it will stop at each INPUT and prompt you for that
variable, such as . The value displayed (and the contents of the X–
register) will be the current contents of R.
ꢀ
ꢀ
To leave the number unchanged, just press .
To change the number, type the new number and press . This new
number writes over the old value in the X–register. You can enter a number as
a fraction if you want. If you need to calculate a number, use normal
keyboard calculations, then press . For example, you can press
in RPN mode, or press
in ALG mode (Before you press , the expression will be displayed in
line 2. After you press , the result of expression will replace the
expression to display in line 2 and be saved in X-register).
13-14 Simple Programming
ꢀ
To cancel the INPUT prompt, press . The current value for the variable
remains in the X–register. If you press to resume the program, the
canceled INPUT prompt is repeated. If you press during digit entry, it
clears the number to zero. Press again to cancel the INPUT prompt.
Using VIEW for Displaying Data
The programmed VIEW instruction ( variable ) stops a running program
and displays and identifies the contents of the given variable, such as
This is a display only, and does not copy the number to the X–register. If Fraction–
display mode is active, the value is displayed as a fraction.
ꢀ
ꢀ
Pressing copies this number to the X–register.
If the number is wider than 14 characters, such as binary, complex, vector
numbers, pressing Öand Õdisplays the rest.
ꢀ
ꢀ
Pressing (or ) erases the VIEW display and shows the X–register.
Pressing
clears the contents of the displayed variable.
Press to continue the program.
If you don't want the program to stop, see "Displaying Information without
Stopping" below.
For example, see the program for "Normal and Inverse–Normal Distributions" in
chapter 16. Lines T015 and T016 at the end of the T routine display the result for X.
Note also that this VIEW instruction in this program is preceded by a RCL
instruction. The RCL instruction is not necessary, but it is convenient because it brings
the VIEWed variable to the X–register, making it available for manual calculations.
(Pressing while viewing a VIEW display would have the same effect.) The
other application programs in chapters 16 and 17 also ensure that the VIEWed
variable is in the X–register as well.
Using Equations to Display Messages
Equations aren't checked for valid syntax until they're evaluated. This means you
can enter almost any sequence of characters into a program as an equation — you
enter it just as you enter any equation. On any program line, press to start
the equation. Press number and math keys to get numbers and symbols. Press
before each letter. Press to end the equation.
If flag 10 is set, equations are displayed instead of being evaluated. This means
you can display any message you enter as an equation. (Flags are discussed in
detail in chapter 14.)
When the message is displayed, the program stops — press to resume
execution. If the displayed message is longer than 14 characters, the ꢆ
annunciator turns on when the message is displayed. You can then use Õ
and Öto scroll the display.
If you don't want the program to stop, see "Displaying Information without
Stopping" below.
Example: INPUT, VIEW, and Messages in a Program.
Write an equation to find the surface area and volume of a cylinder given its radius
and height. Label the program C (for cylinder), and use the variables S (surface
area), V (volume), R (radius), and H (height). Use these formulas:
2
V = πR H
2
S = 2π R + 2π RH = 2π R ( R + H )
Keys:
Display:
Description:
(In RPN mode)
Program, entry; clears the
program memory.
()
Ö
Labels program.
ÇR
ÇH
Instructions to prompt for
radius and height.
13-16 Simple Programming
Keys:
Display:
Description:
(In RPN mode)
Calculates the volume.
R
H
π
Checksum and length of
equation.
Store the volume in V.
Calculates the surface area.
V
R
4 R
H
πꢆ
Checksum and length of
equation.
Stores the surface area in S.
Sets flag 10 to display
equations.
S
()
Displays message in
equations.
V
OL
A
RE
A
ꢆ
Clears flag 10.
()
V
S
Displays volume.
Displays surface area.
Ends program.
Displays label C and the
length of the program in
()
bytes.
Checksum and length of
program.
Cancels program entry.
1
Now find the volume and surface area–of a cylinder with a radius of 2 / cm and
2
a height of 8 cm.
Keys:
Display:
Description:
(In RPN mode)
C
Starts executing C; prompts for
R. (It displays whatever value
happens to be in R.)
value
1
Enters 2 / as a fraction.
2
Prompts for H.
Message displayed.
value
3
Volume in cm .
2
Surface area in cm .
Displaying Information without Stopping
Normally, a program stops when it displays a variable with VIEW or displays an
equation message. You normally have to press to resume execution.
If you want, you can make the program continue while the information is displayed.
If the next program line — after a VIEW instruction or a viewed equation —
contains a PSE (pause) instruction, the information is displayed and execution
continues after a 1–second pause. In this case, no scrolling or keyboard input is
allowed.
The display is cleared by other display operations, and by the RND operation if flag
7 is set (rounding to a fraction).
Press to enter PSE in a program.
The VIEW and PSE lines — or the equation and PSE lines — are treated as one
operation when you execute a program one line at a time.
13-18 Simple Programming
Stopping or Interrupting a Program
Programming a Stop or Pause (STOP, PSE)
ꢀ
Pressing (run/stop) during program entry inserts a STOP instruction. This
will display the contents of the X-register and halt a running program until you
resume it by pressing from the keyboard. You can use STOP rather than
RTN in order to end a program without returning the program pointer to the
top of memory.
ꢀ
Pressing during program entry inserts a PSE (pause) instruction.
This will suspend a running program and display the contents of the X–
register for about 1 second — with the following exception. If PSE
immediately follows a VIEW instruction or an equation that's displayed (flag
10 set), the variable or equation is displayed instead — and the display
remains after the 1–second pause.
Interrupting a Running Program
You can interrupt a running program at any time by pressing or . The
program completes its current instruction before stopping. Press (run/stop) to
resume the program.
If you interrupt a program and then press , , or , you cannot
resume the program with . Re-execute the program instead ( label line
number).
Error Stops
If an error occurs in the course of a running program, program execution halts and
an error message appears in the display. (There is a list of messages and conditions
in appendix F.)
To see the line in the program containing the error–causing instruction, press
. The program will have stopped at that point. (For instance, it might be a ÷
instruction, which caused an illegal division by zero.)
Editing a Program
You can modify a program in program memory by inserting, deleting, and editing
program lines. If a program line contains an equation, you can edit the equation.
To delete a program line:
1. Select the relevant program or routine and press Øor ×to locate the
program line that must be changed. Hold the cursor key down to continue
scrolling.
2. Delete the line you want to change —press directly (Undo function is
active). The pointer then moves to the preceding line. (If you are deleting more
than one consecutive program line, start with the last line in the group.)
3. Key in the new instruction, if any. This replaces the one you deleted.
4. Exit program entry ( or ).
To insert a program line:
1. Locate and display the program line that is before the spot where you would
like to insert a line.
2. Key in the new instruction; it is inserted after the currently displayed line.
For example, if you wanted to insert a new line between lines A004 and A005 of a
program, you would first display line A004, then key in the instruction or
instructions. Subsequent program lines, starting with the original line A005, are
moved down and renumbered accordingly.
To edit operand, expression or equation in a program line:
1. Locate or display the program line that you want to edit.
2. Press Õor Öto start editing the program line. These turn on the “_”
editing cursor, but do not delete anything in the program line
Õ key actives the cursor to the left of the program line
Ö key actives the cursor to the end of the program line
13-20 Simple Programming
3. Moving the cursor”_” and press repeatedly to delete the unwanted
number or function, then retype the rest of the program line. (After pressing
, Undo function is active)
Notice:
1. When the cursor is active in the program line, Øor ×key will be
disabled.
2. When you are editing a program line (cursor active), and the program line is
empty, using will have no effect. If you want to erase the program line,
press and the program line will be erased.
3. You can use Õand Ökey to review long program lines and
without editing it.
4. In ALG mode, can not be used as a function, it is used to validate a
program line.
5. An equation can be editing in any mode no matter which mode it was
entered in.
Program Memory
Viewing Program Memory
Pressing toggles the calculator into and out of program entry (PRGM
annunciator on, program lines displayed). When Program–entry mode is active, the
contents of program memory are displayed.
Program memory starts at . The list of program lines is circular, so you
can wrap the program pointer from the bottom to the top and reverse. While
program entry is active, there are four ways to change the program pointer (the
displayed line):
ꢀ
×and Øallows you to move from label to label. If no labels
are defined, It will move to the top or bottom of the program.
ꢀ
To move more than one line at a time ("scrolling"), continue to hold the Ø
or ×key.
ꢀ
ꢀ
Press to move the program pointer to .
Press label nnn to move to a specific line.
If Program–entry mode is not active (if no program lines are displayed), you can
also move the program pointer by pressing label line number.
Canceling Program–entry mode does not change the position of the program
pointer.
Memory Usage
If during program entry you encounter the message , then there is
not enough room in program memory for the line you just tried to enter. You can
make more room available by clearing programs or other data. See "Clearing One
or More Programs" below, or "Managing Calculator Memory" in appendix B.
The Catalog of Programs (MEM)
The catalog of programs is a list of all program labels with the number of bytes of
memory used by each label and the lines associated with it. Press
(2) to display the catalog, and press Øor ×to move within the
list. You can use this catalog to:
ꢀ
Review the labels in program memory and the memory cost of each labeled
program or routine.
ꢀ
Execute a labeled program. (Press or while the label is
displayed.)
ꢀ
ꢀ
ꢀ
Display a labeled program. (Press while the label is displayed.)
Delete specific programs. (Press
while the label is displayed.)
See the checksum associated with a given program segment. (Press
.)
The catalog shows you how many bytes of memory each labeled program segment
uses. The programs are identified by program label:
13-22 Simple Programming
where 67 is the number of bytes used by the program.
Clearing One or More Programs
To clear a specific program from memory
1. Press (2) and display (using Øand ×) the
label of the program.
2. Press
.
3. Press to cancel the catalog or to back out.
To clear all programs from memory:
1. Press to display program lines (PRGM annunciator on).
2. Press
() to clear program memory.
3. The message prompts you for confirmation. Press Ö()
.
4. Press to cancel program entry.
Clearing all of memory (
()) also clears all programs.
The Checksum
The checksum is a unique hexadecimal value given to each program label and its
associated lines (until the next label). This number is useful for comparison with a
known checksum for an existing program that you have keyed into program
memory. If the known checksum and the one shown by your calculator are the
same, then you have correctly entered all the lines of the program. To see your
checksum:
1. Press () for the catalog of program labels.
2. Display the appropriate label by using the cursor keys, if necessary.
3. Press and hold to display checksum and length.
For example, to see the checksum for the current program (the "cylinder" program):
Keys:
Display:
Description:
(In RPN mode)
Displays label C, which takes
67 bytes.
Checksum and length.
()
(hold)
If your checksum does not match this number, then you have not entered this
program correctly.
You will see that all of the application programs provided in chapters 16 and 17
include checksum values with each labeled routine so that you can verify the
accuracy of your program entry.
In addition, each equation in a program has a checksum. See "To enter an
equation in a program line" earlier in this chapter.
Nonprogrammable Functions
The following functions of the HP 35s are not programmable:
()
()
label line number
Ø, ×,Ö, Õ
Ø, ×
:
()
Programming with BASE
You can program instructions to change the base mode using . These
settings work in programs just as they do as functions executed from the keyboard.
13-24 Simple Programming
This allows you to write programs that accept numbers in any of the four bases, do
arithmetic in any base, and display results in any base.
When writing programs that use numbers in a base other than 10, set the base
mode both as the current setting for the calculator and in the program (as an
instruction).
Selecting a Base Mode in a Program
Insert a BIN, OCT, or HEX instruction into the beginning of the program. You should
usually include a DEC instruction at the end of the program so that the calculator's
setting will revert to Decimal mode when the program is done.
An instruction in a program to change the base mode will determine how input is
interpreted and how output looks during and after program execution, but it does
not affect the program lines as you enter them.
Numbers Entered in Program Lines
Before starting program entry, set the base mode. The current setting for the base
mode determines the result of program.
An annunciator tells you which base is the current setting. Compare the program
lines below in the decimal and non-decimal mode. All decimal and non-decimal
numbers are left–justified in the calculator's display.
Decimal mode set:
Binary mode set:
:
:
:
:
PRGM
PRGM BIN
Decimal number
can omit the sign
“d”
Binary number
should add the
base sign ”b”
:
:
:
:
Polynomial Expressions and Horner's Method
Some expressions, such as polynomials, use the same variable several times for their
solution. For example, the expression
4
3
2
Ax + Bx + Cx + Dx + E
uses the variable x four different times. A program to calculate such an expression
using RPN operations could repeatedly recall a stored copy of x from a variable.
Example:
4
3
Write a program using RPN operations for 5x + 2x , then evaluate it for x = 7.
13-26 Simple Programming
Keys:
Display:
Description:
(In RPN mode)
A
X
5
X
4
x
4
5x
X
3
x
3
4
2x
3
5x + 2x
Displays label A, which
takes 46 bytes.
Checksum and length.
()
Cancels program entry.
Now evaluate this polynomial for x = 7.
Keys:
(In RPN mode)
A
Display:
Description:
Prompts for x.
Result.
value
A more general form of this program for any equation
4
3
2
Ax + Bx + Cx + Dx + E would be:
Checksum and length: 9E5E 51
13-28 Simple Programming
14
Programming Techniques
Chapter 13 covered the basics of programming. This chapter explores more
sophisticated but useful techniques:
ꢀ
Using subroutines to simplify programs by separating and labeling portions
of the program that are dedicated to particular tasks. The use of subroutines
also shortens a program that must perform a series of steps more than once.
ꢀ
ꢀ
ꢀ
Using conditional instructions (comparisons and flags) to determine which
instructions or subroutines should be used.
Using loops with counters to execute a set of instructions a certain number of
times.
Using indirect addressing to access different variables using the same
program instruction.
Routines in Programs
A program is composed of one or more routines. A routine is a functional unit that
accomplishes something specific. Complicated programs need routines to group
and separate tasks. This makes a program easier to write, read, understand, and
alter.
A routine typically starts at a label and ends with an instruction that stops program/
routing execution such as RTN or STOP.
Calling Subroutines (XEQ, RTN)
A subroutine is a routine that is called from (executed by) another routine and
returns to that same routine when the subroutine is finished.
ꢀ
ꢀ
If you plan to have only one program in the calculator memory, you can
separate the routine in various labels. If you plan to have more than one
program in the calculator memory, it is better to have routines part of the
main program label, starting at a specific line number.
A subroutine can itself call other subroutines.
The flow diagrams in this chapter use this notation:
ꢇ 1
Program execution branches from this line to the
line number marked 1 ("from 1").
1
Program execution branches from a line number
marked ꢇ 1 ("to 1") to this line.
The example below show you to call a subroutine to change the sign of the number
you input. Subroutine E that is called from routine D by line
changes sign of the number. Subroutine E ends with a RTN instruction that sends
program execution back to routine D (to store and display the result) at line D004.
See the flow diagrams below.
Starts here.
ꢇ 1
2
Calls subroutine E.
Returns here.
Starts subroutine.
1
Change sign of the number
Returns to routine D.
ꢇ 2
Nested Subroutines
A subroutine can call another subroutine, and that subroutine can call yet another
subroutine. This "nesting" of subroutines — the calling of a subroutine within
another subroutine — is limited to a stack of subroutines 20 levels deep (not
counting the topmost program level). The operation of nested subroutines is as
shown below:
MAIN program
(Top level)
End of program
Attempting to execute a subroutine nested more than 20 levels deep causes an
error.
Example: A Nested Subroutine.
The following subroutine, labeled S, calculates the value of the expression
a2 + b2 + c2 + d2
as part of a larger calculation in a larger program. The subroutine calls upon
another subroutine (a nested subroutine), labeled Q, to do the repetitive squaring
and addition. This saves memory by keeping the program shorter than it would be
without the subroutine.
In RPN mode,
Starts subroutine here.
Enters A.
Enters B.
Enters C.
Enters D.
Recalls the data.
2
A .
2
2
A + B .
ꢇ 1
ꢇ 3
ꢇ 5
2
2
2
2
A + B + C
2 ꢇ
4 ꢇ
6 ꢇ
2
2
2
A + B + C + D
A2 + B2 + C2 + D2
Returns to main routine.
Nested subroutine
135
2
Adds x .
Returns to subroutine S.
246
Branching (GTO)
As we have seen with subroutines, it is often desirable to transfer execution to a part
of the program other than the next line. This is called branching.
Unconditional branching uses the GTO (go to) instruction to branch to a specific
program line (label and line number).
A Programmed GTO Instruction
The GTO label instruction (press label line number) transfers the execution of
a running program to the specified program line. The program continues running
from the new location, and never automatically returns to its point of origination, so
GTO is not used for subroutines.
For example, consider the "Curve Fitting" program in chapter 16. The
instruction branches execution from any one of three independent initializing
routines to LBL Z, the routine that is the common entry point into the heart of the
program:
Can start here.
.
.
.
Branches to Z001.
Can start here.
ꢇ1
.
.
.
Branches to Z001.
Can start here.
ꢇ1
.
.
.
Branches to Z001.
Branch to here.
ꢇ1
1
.
.
.
Using GTO from the Keyboard
You can use to move the program pointer to a specified label line number
without starting program execution.
ꢀ
ꢀ
To : .
To a specific line number: label line number (line number < 1000).
For example, A. For example, press A
. The display will show ” ” .
ꢀ
If you want to go to the first line of a label, for example. A001:
(press and hold), the display will show ” ”.
Conditional Instructions
Another way to alter the sequence of program execution is by a conditional test, a
true/false test that compares two numbers and skips the next program instruction if
the proposition is false.
For instance, if a conditional instruction on line A005 is (that is, is x equal to
zero?), then the program compares the contents of the X–register with zero. If the X–
register does contain zero, then the program goes on to the next line. If the X–
register does not contain zero, then the program skips the next line, thereby
branching to line A007. This rule is commonly known as "Do if true."
.
.
.
Do next if true.
1
ꢇ 2
Skip next if false.
2
.
.
.
1 ꢇ
.
.
.
The above example points out a common technique used with conditional tests: the
line immediately after the test (which is only executed in the "true" case) is a branch
to another label. So the net effect of the test is to branch to a different routine under
certain circumstances.
There are three categories of conditional instructions:
ꢀ
Comparison tests. These compare the X–and Y–registers, or the X–register
and zero.
ꢀ
ꢀ
Flag tests. These check the status of flags, which can be either set or clear.
Loop counters. These are usually used to loop a specified number of times.
Tests of Comparison (x?y, x?0)
There are 12 comparisons available for programming. Pressing or
displays a menu for one of the two categories of tests:
ꢀ
ꢀ
x?y for tests comparing x and y.
x?0 for tests comparing x and 0.
Remember that x refers to the number in the X–register, and y refers to the number in
the Y–register. These do not compare the variables X and Y. You can use x?y and
x?0 to compare two numbers, if one of these isn't real number, it will return an error
message .
Select the category of comparison, then press the menu key for the conditional
instruction you want.
The Test Menus
x?y
x?0
≠ for x ≠ y?
≤ for x≤y?
< for x<y?
> for x>y?
≥ for x≥y?
for x=y?
≠ for x≠0?
≤ for x≤0?
< for x<0?
> for x>0?
≥ for x≥0?
for x=0?
If you execute a conditional test from the keyboard, the calculator will display
or .
For example, if x =2 and y =7, test x<y .
Keys:
Display:
In RPN mode
In ALG mode
ÕÕ(<)
ÕÕ(<)
Example:
The "Normal and Inverse–Normal Distributions" program in chapter 16 uses the
x<y? conditional in routine T:
Program Lines:
(In RPN mode)
Description
.
.
.
Calculates the correction for X
.
guess
Adds the correction to yield a new X
.
guess
<
Tests to see if the correction is significant.
Goes back to start of loop if correction is significant.
Continues if correction is not significant.
Displays the calculated value of X.
.
.
.
Line T009 calculates the correction for X . Line T013 compares the absolute
guess
value of the calculated correction with 0.0001. If the value is less than 0.0001 ("Do
If True"), the program executes line T014; if the value is equal to or greater than
0.0001, the program skips to line T015.
Flags
A flag is an indicator of status. It is either set (true) or clear (false). Testing a flag is
another conditional test that follows the "Do if true" rule: program execution
proceeds directly if the tested flag is set, and skips one line if the flag is clear.
Meanings of Flags
The HP 35s has 12 flags, numbered 0 through 11. All flags can be set, cleared,
and tested from the keyboard or by a program instruction. The default state of all 12
flags is clear. The three–key memory clearing operation described in appendix B
clears all flags. Flags are not affected by
() Ö() .
ꢀ
Flags 0, 1, 2, 3, and 4 have no pre-assigned meanings. That is, their states
will mean whatever you define them to mean in a given program. (See the
example below.)
ꢀ
Flag 5, when set, will interrupt a program when an overflow occurs within the
program, displaying and . An overflow occurs when a result
exceeds the largest number that the calculator can handle. The largest
possible number is substituted for the overflow result. If flag 5 is clear, a
program with an overflow is not interrupted, though is displayed
briefly when the program eventually stops.
ꢀ
Flag 6 is automatically set by the calculator any time an overflow
occurs (although you can also set flag 6 yourself). It has no effect, but can be
tested. Besides, when using non-decimal bases in programs, flag 6 also gets
set for in programs.
Flags 5 and 6 allow you to control overflow conditions that occur during a
program. Setting flag 5 stops a program at the line just after the line that
caused the overflow. By testing flag 6 in a program, you can alter the
program's flow or change a result anytime an overflow occurs.
ꢀ
Flags 7, 8 and 9 control the display of fractions. Flag 7 can also be controlled
from the keyboard. When Fraction–display mode is toggled on or off by
pressing , flag 7 is set or cleared as well.
Flag
Status
Fraction–Control Flags
8
7
9
Fraction display
off; display real
numbers in the
current display
format.
Fraction
Reduce fractions to
smallest form.
Clear
denominators not
greater than the /c
value.
(Default)
Fraction display
on; display real
numbers as
Fraction
No reduction of
fractions. (Used
only if flag 8 is
set.)
Set
denominators are
factors of the /c
Value.
fractions.
14-10 Programming Techniques
ꢀ
Flag 10 controls program execution of equations:
When flag 10 is clear (the default state), equations in running programs are
evaluated and the result put on the stack.
When flag 10 is set, equations in running programs are displayed as
messages, causing them to behave like a VIEW statement:
1. Program execution halts.
2. The program pointer moves to the next program line.
3. The equation is displayed without affecting the stack. You can clear the
display by pressing or . Pressing any other key executes that
key's function.
4. If the next program line is a PSE instruction, execution continues after a
1–second pause.
The status of flag 10 is controlled only by execution of the SF and CF
operations from the keyboard, or by SF and CF statements in programs.
ꢀ
Flag 11 controls prompting when executing equations in a program — it
doesn't affect automatic prompting during keyboard execution:
When flag 11 is clear (the default state), evaluation, SOLVE, and ∫ FN of
equations in programs proceed without interruption. The current value of each
variable in the equation is automatically recalled each time the variable is
encountered. INPUT prompting is not affected.
When flag 11 is set, each variable is prompted for when it is first
encountered in the equation. A prompt for a variable occurs only once,
regardless of the number of times the variable appears in the equation.
When solving, no prompt occurs for the unknown; when integrating, no
prompt occurs for the variable of integration. Prompts halt execution. Pressing
resumes the calculation using the value for the variable you keyed in, or
the displayed (current) value of the variable if is your sole response to
the prompt.
Flag 11 is automatically cleared after evaluation, SOLVE, or
∫ FN of an equation in a program. The status of flag 11 is also controlled by
execution of the SF and CF operations from the keyboard, or by SF and CF
statements in programs.
Programming Techniques 14-11
Annunciators for Set Flags
Flags 0, 1, 2, 3 and 4 have annunciators in the display that turn on when the
corresponding flag is set. The presence or absence of 0, 1, 2, 3 or 4 lets you know
at any time whether any of these five flags is set or not. However, there is no such
indication for the status of flags 5 through 11. The states of these flags can be
determined by executing the FS? instruction from the keyboard. (See "Using Flags"
below.)
Using Flags
Pressing displays the FLAGS menu:
After selecting the function you want, you will be prompted for the flag number (0–
11). For example, press () to set flag 0; press
() to set flag 10; press () to
set flag 11.
FLAGS Menu
Menu Key
n
Description
Set flag. Sets flag n.
n
Clear flag. Clears flag n.
n
Is flag set? Tests the status of flag n.
A flag test is a conditional test that affects program execution just as the comparison
tests do. The FS? n instruction tests whether the given flag is set. If it is, then the next
line in the program is executed. If it is not, then the next line is skipped. This is the
"Do if True" rule, illustrated under "Conditional Instructions" earlier in this chapter.
If you test a flag from the keyboard, the calculator will display "" or "".
14-12 Programming Techniques
It is good practice in a program to make sure that any conditions you will be testing
start out in a known state. Current flag settings depend on how they have been left
by earlier programs that have been run. You should not assume that any given flag
is clear, for instance, and that it will be set only if something in the program sets it.
You should make sure of this by clearing the flag before the condition arises that
might set it. See the example below.
Example: Using Flags.
Program Lines:
(In RPN mode)
Description:
Clears flag 0, the indicator for In X.
Clears flag 1, the indicator for In Y.
Prompts for and stores X
If flag 0 is set…
… takes the natural log of the X-input
Stores that value in X after flag test
Prompts for and stores Y
If flag 1 is set…
… takes the natural log of the Y-input
Stores that value in Y after flag test
Displays value
Displays value
Checksum and length: 16B3 42
If you write lines S002 CF0 and S003 CF1(as shown above), the flags 0 and 1 are
cleared so lines S006 and S010 do not take the natural logarithms of the X- and Y-
inputs.
If you replace lines S002 and S003 by SF 0 and CF 1, then flag 0 is set so line
S006 takes the natural log of the X-input.
If you replace lines S002 and S003 by CF 0 and SF1, then flag 1 is set so line
S010 takes the natural log of the Y-input.
Programming Techniques 14-13
If you replace lines S002 and S003 by SF0 and SF1, then flags 0 and 1 are set so
lines S006 and S010 take the natural logarithms of the X- and Y-inputs.
Use above program to see how to use flags
Keys:
Display:
Description:
(In RPN mode)
Executes label S; prompts for X
value
Stores 1 in X; prompts Y value
S
value
value
Stores 1 in X ;displays X value
after flag test
Displays Y value after flag test
You can try other three cases. Remember to press () and
() to clear flag 1 and 0 after you try them.
Example: Controlling the Fraction Display.
The following program lets you exercise the calculator's fraction–display capability.
The program prompts for and uses your inputs for a fractional number and a
denominator (the /c value). The program also contains examples of how the three
fraction–display flags (7, 8, and 9) and the "message–display" flag (10) are used.
Messages in this program are listed as MESSAGE and are entered as equations:
1. Set Equation–entry mode by pressing (the EQN annunciator turns on).
2. Press letter for each alpha character in the message; press
for each space character.
3. Press to insert the message in the current program line and end
Equation–entry mode.
14-14 Programming Techniques
Program Lines:
(In RPN mode)
Description:
Begins the fraction program.
Clears three fraction flags.
Displays messages.
Selects decimal base.
Prompts for a number.
Prompts for denominator (2 – 4095).
Displays message, then shows the decimal
number.
Sets /c value and sets flag 7.
Displays message, then shows the fraction.
Sets flag 8.
Displays message, then shows the fraction.
Sets flag 9.
Displays message, then shows the fraction.
Goes to beginning of program.
Checksum and length: BE54 123
Programming Techniques 14-15
Use the above program to see the different forms of fraction display:
Keys:
Display:
Description:
(In RPN mode)
Executes label F; prompts for a
fractional number (V).
Stores 2.53 in V; prompts for
denominator (D).
Stores 16 as the /c value. Displays
message, then the decimal number.
F
value
value
Message indicates the fraction
format (denominator is no greater
than 16), then shows the fraction. ꢅ
indicates that the numerator is "a
ꢅ
little below" 8.
Message indicates the fraction
format (denominator is factor of 16),
then shows the fraction.
ꢄ
Message indicates the fraction
format (denominator is 16), then
shows the fraction.
Stops the program and clears flag
ꢄ
10
()
Loops
Branching backwards — that is, to a label in a previous line — makes it possible to
execute part of a program more than once. This is called looping.
14-16 Programming Techniques
This routine is an example of an infinite loop. It can be used to collect the initial
data. After entering the three values, it is up to you to manually interrupt this loop by
pressing label line number to execute other routines.
Conditional Loops (GTO)
When you want to perform an operation until a certain condition is met, but you
don't know how many times the loop needs to repeat itself, you can create a loop
with a conditional test and a GTO instruction.
For example, the following routine uses a loop to diminish a value A by a constant
amount B until the resulting A is less than or equal to B.
Program lines:
(In RPN mode)
Description:
It is easier to recall A than to remember where it is in the
stack.
Calculates A – B.
Replaces old A with new result.
Recalls constant for comparison.
Is B < new A?
Yes: loops to repeat subtraction.
No: displays new A.
Checksum and length: 2737 33
Programming Techniques 14-17
Loops with Counters (DSE, ISG)
When you want to execute a loop a specific number of times, use the
(increment; skip if greater than) or (decrement; skip if less than or equal
to) conditional function keys. Each time a loop function is executed in a program, it
automatically decrements or increments a counter value stored in a variable. It
compares the current counter value to a final counter value, then continues or exits
the loop depending on the result.
For a count–down loop, use variable
For a count–up loop, use variable
These functions accomplish the same thing as a FOR–NEXT loop in BASIC:
variable = initial–value final–value increment
.
.
.
variable
A DSE instruction is like a FOR–NEXT loop with a negative increment.
After pressing a shifted key for ISG or DSE ( or ), you will be
prompted for a variable that will contain the loop–control number (described
below).
The Loop–Control Number
The specified variable should contain a loop–control number ccccccc.fffii, where:
ꢀ
ccccccc is the current counter value (1 to 12 digits). This value changes with
loop execution.
ꢀ
fff is the final counter value (must be three digits). This value does not change
as the loop runs. An unspecified value for fff is assumed to be 000.
14-18 Programming Techniques
ꢀ
ii is the interval for incrementing and decrementing (must be two digits or
unspecified). This value does not change. An unspecified value for ii is
assumed to be 01 (increment/decrement by 1).
Given the loop–control number ccccccc.fffii, DSE decrements ccccccc to ccccccc —
ii, compares the new ccccccc with fff, and makes program execution skip the next
program line if this ccccccc ≤ fff.
Given the loop–control number ccccccc.fffii, ISG increments ccccccc to ccccccc + ii,
compares the new ccccccc with fff, and makes program execution skip the next
program line if this ccccccc > fff.
1ꢇ
.
.
.
If current value >
final value,
continue loop.
If current value ≤
final value, exit
loop.
ꢇ2
1
2
.
.
.
1ꢇ
.
.
.
If current value ≤
final value,
continue loop.
If current value >
final value, exit
loop.
ꢇ2
1
2
.
.
.
For example, the loop–control number 0.050 for ISG means: start counting at zero,
count up to 50, and increase the number by 1 each loop.
If the loop-control number is a complex number or vector, it will use the real part or
first part to control the loop.
The following program uses ISG to loop 10 times in RPN mode. The loop counter
(1.010) is stored in the variable Z. Leading and trailing zeros can be left off.
Programming Techniques 14-19
Press L, then press Zto see that the loop–control
number is now 11.0100.
Indirectly Addressing Variables and Labels
Indirect addressing is a technique used in advanced programming to specify a
variable or label without specifying beforehand exactly which one. This is
determined when the program runs, so it depends on the intermediate results (or
input) of the program.
Indirect addressing uses four different keys: 0, 7, 1 , and A.
These keys are active for many functions that take A through Z as variables or
labels.
ꢀ
I and J are variables whose contents can refer to another variable. It holds a
number just like any other variable (A through Z).
ꢀ
(I) and (J) are programming functions that directs, "Use the number in I or J to
determine which variable or label to address."
This is an indirect address. (A through Z are direct addresses.)
Both 0 and 7 are used together to create an indirect address and this applies to
both 1 and A as well.
By itself, (I) or (J) is either undefined (no number in (I) or (J)) or uncontrolled (using
whatever number happens to be left over in I or J).
The Variables "I" and "J"
You can store, recall, and manipulate the contents of I or J just as you can the
contents of other variables. You can even solve for I,J and integrate using I or J . The
functions listed below can use variable "i"(the variable J is the same).
14-20 Programming Techniques
STO I
RCL I
STO +,–, × ,÷ I
RCL +,–, × ,÷ I
INPUT I
VIEW I
∫ FN d I
SOLVE I
DSE I
ISG I
x < > I
The Indirect Address, (I) and (J)
Many functions that use A through Z (as variables or labels) can use (I) or (J) to refer
to A through Z (variables or labels) or statistics registers indirectly. The function (I) or
(J) uses the value in variable I to J to determine which variable, label, or register to
address. The following table shows how.
Programming Techniques 14-21
If I/J contains:
Then (I)/(J) will address:
-1
variable A or label A
.
.
.
.
.
.
-26
-27
variable Z or label Z
n register
-28
-29
-30
Σx register
Σy register
2
Σx register
2
-31
-32
Σy register
Σxy register
0
Unnamed Indirect variables start
.
.
.
.
.
.
800
The Max Address is 800
error:
I<-32 or I>800 or variables
undefined
J<-32 or I>800 or variables
error:
undefined
The INPUT(I) ,INPUT(J) and VIEW(I) ,VIEW(J)operations label the display with the
name of the indirectly–addressed variable or register.
The SUMS menu enables you to recall values from the statistics registers. However,
you must use indirect addressing to do other operations, such as STO, VIEW, and
INPUT.
The functions listed below can use (I) or (J) as an address. For FN=, (I) or (J) refers
to a label; for all other functions (I) or (J) refers to a variable or register.
14-22 Programming Techniques
STO(I)/(J)
RCL(I)/(J)
STO +, –,× ,÷, (I)/(J)
RCL +, –,× ,÷, (I)/(J)
X<>(I)/(J)
INPUT(I)/(J)
VIEW(I)/(J)
DSE(I)/(J)
ISG(I)/(J)
SOLVE(I)/(J)
∫ FN d(I)/(J)
FN=(I)/(J)
You can not solve or integrate for unnamed variables or statistic registers.
Program Control with (I)/(J)
Since the contents of I can change each time a program runs — or even in different
parts of the same program — a program instruction such as STO (I) or (J) can store
value to a different variable at different times. For example, STO(-1) indicates storing
the value in Variable A. This maintains flexibility by leaving open (until the program
runs) exactly which variable or program label will be needed.
Indirect addressing is very useful for counting and controlling loops. The variable I
or J serves as an index, holding the address of the variable that contains the loop–
control number for the functions DSE and ISG.
Equations with (I)/(J)
You can use (I) or (J) in an equation to specify a variable indirectly. Notice that
or means the variable specified by the number in variable I or J (an
indirect reference), but that I or J and or (where the user parenthesis are
used instead of the (I) or (J) key) means variable I or J.
Unnamed indirect variables
Placing a positive number into variable I or J allows you to access up to 801 indirect
variables. The following example indicates how to use them.
Programming Techniques 14-23
Program Lines:
(In RPN mode)
Description:
Defined the storage address range “0-100” and saved
“12345” into address 100.
Saves “67890” into address 150. The defined indirect
storage range is now “0-150”.
Stores 0 into indirect register 100. The defined range is
still “0-150”.
Display “INVALID (I)”, because address “170” is
undefined
Note:
1. If you want to recall the value from an undefined storage address, the error
message “ ”will be shown”. (See A014)
2. The calculator allocates memory for variable 0 to the last non-zero variable. It is
important to store 0 in variables after using them in order to release the
memory. Each allocated indirect register uses 37 bytes of program memory.
3. There is a maximum of 800 variables.
14-24 Programming Techniques
15
Solving and Integrating Programs
Solving a Program
In chapter 7 you saw how you can enter an equation — it's added to the equation
list — and then solve it for any variable. You can also enter a program that
calculates a function, and then solve it for any variable. This is especially useful if
the equation you're solving changes for certain conditions or if it requires repeated
calculations.
To solve a programmed function:
1. Enter a program that defines the function. (See "To write a program for SOLVE"
below.)
2. Select the program to solve: press label. (You can skip this step if
you're re–solving the same program.)
3. Solve for the unknown variable: press variable.
Notice that FN= is required if you're solving a programmed function, but not if
you're solving an equation from the equation list.
To halt a calculation, press or and the message will
appear in line 2. The current best estimate of the root is in the unknown variable;
use to view it without disturbing the stack. To resume the calculation,
press .
To write a program for SOLVE:
The program can use equations and ALG or RPN operations — in whatever
combination is most convenient.
1. Begin the program with a label. This label identifies the function that you want
SOLVE to evaluate (label).
2. Include an INPUT instruction for each variable, including the unknown. INPUT
instructions enable you to solve for any variable in a multi–variable function.
INPUT for the unknown is ignored by the calculator, so you need to write only
one program that contains a separate INPUT instruction for every variable
(including the unknown).
If you include no INPUT instructions, the program uses the values stored in the
variables or entered at equation prompts.
3. Enter the instructions to evaluate the function.
ꢀ
A function programmed as a multi–line RPN or ALG sequence must be in
the form of an expression that goes to zero at the solution. If your equation
is f(x) = g(x), your program should calculate f(x) – g(x). "=0" is implied.
ꢀ
A function programmed as an equation can be any type of equation —
equality, assignment, or expression. The equation is evaluated by the
program, and its value goes to zero at the solution. If you want the
equation to prompt for variable values instead of including INPUT
instructions, make sure flag 11 is set.
4. End the program with a RTN. Program execution should end with the value of
the function in the X–register.
Example: Program Using ALG.
Write a program using ALG operations that solves for any unknown in the equation
for the "Ideal Gas Law." The equation is:
P x V= N x R x T
where
2
P = Pressure (atmospheres or N/m ).
V = Volume (liters).
N = Number of moles of gas.
R = The universal gas constant
(0.0821 liter–atm/mole–K or 8.314 J/mole–K).
T = Temperature (kelvins; K = °C + 273.1).
To begin, put the calculator in Program mode; if necessary, position the program
pointer to the top of program memory.
Keys:
Display:
Description:
(In ALG mode)
Sets Program mode.
Type in the program:
Program Lines:
(In ALG mode)
Description:
Identifies the programmed function.
Stores P for pressure
Stores V for volume
Stores N for number of moles of gas
Stores R for gas constant
Stores T for temp.
×××
Press
Pressure × volume = Moles × gas constant × temp.
Ends the program.
Checksum and length: F425 33
Press to cancel Program–entry mode.
Use program "G" to solve for the pressure of 0.005 moles of carbon dioxide in a
2–liter bottle at 24 °C.
Keys:
Display:
Description:
(In ALG mode)
Selects "G" — the program.
G
SOLVE evaluates to find the value
of the unknown variable.
Selects P; prompts for V.
P
value
Stores 2 in V; prompts for N.
value
Stores .005 in N; prompts for R.
value
Stores .0821 in R; prompts for T.
value
Calculates T.
Stores 297.1 in T; solves for P.
Pressure is 0.0610 atm.
Example: Program Using Equation.
Write a program that uses an equation to solve the "Ideal Gas Law."
Keys:
Display:
Description:
(In RPN mode)
Selects Program–entry mode.
Moves program pointer to top of
the list of programs.
Labels the program.
Enables equation prompting.
H
(1)
Evaluates the equation, clearing
flag 11. (Checksum and length:
EDC8 9).
P
V
N
R
T
Ends the program.
Cancels Program–entry mode.
Checksum and length of program: DF52 21
Now calculate the change in pressure of the carbon dioxide if its temperature drops
by 10 °C from the previous example.
Keys:
Display:
Description:
(In RPN mode)
Stores previous pressure.
Selects program “H.”
L
H
P
Selects variable P; prompts for V.
Retains 2 in V; prompts for N.
Retains .005 in N; prompts for R.
Retains .0821 in R; prompts for T.
Calculates new T.
Stores 287.1 in T; solves for new P.
Calculates pressure change of the
gas when temperature drops from
297.1 K to 287.1 K (negative result
indicates drop in pressure).
L
Using SOLVE in a Program
You can use the SOLVE operation as part of a program.
If appropriate, include or prompt for initial guesses (into the unknown variable and
into the X–register) before executing the SOLVE variable instruction. The two
instructions for solving an equation for an unknown variable appear in programs
as:
label
variable
The programmed SOLVE instruction does not produce a labeled display (variable =
value) since this might not be the significant output for your program (that is, you
might want to do further calculations with this number before displaying it). If you
do want this result displayed, add a VIEW variable instruction after the SOLVE
instruction.
If no solution is found for the unknown variable, then the next program line is
skipped (in accordance with the "Do if True" rule, explained in chapter 14). The
program should then handle the case of not finding a root, such as by choosing
new initial estimates or changing an input value.
Example: SOLVE in a Program.
The following excerpt is from a program that allows you to solve for x or y by
pressing X or Y.
Program Lines:
(In RPN mode)
Description:
Setup for X.
Index for X.
Checksum and length: 62A0 11
Branches to main routine.
Setup for Y.
Index for Y.
Checksum and length: 221E 11
Branches to main routine.
Main routine.
Stores index in I
Defines program to solve.
Solves for appropriate variable.
Displays solution.
Ends program.
Checksum and length: D45B 18
Calculates f (x,y). Include INPUT or equation
prompting as required.
Integrating a Program
In chapter 8 you saw how you can enter an equation (or expression) — it's added
to the list of equations — and then integrate it with respect to any variable. You can
also enter a program that calculates a function, and then integrate it with respect to
any variable. This is especially useful if the function you're integrating changes for
certain conditions or if it requires repeated calculations.
To integrate a programmed function:
1. Enter a program that defines the integrand's function. (See "To write a program
for ∫ FN" below.)
2. Select the program that defines the function to integrate: press
label. (You can skip this step if you're reintegrating the same program.)
3. Enter the limits of integration: key in the lower limit and press , then key
in the upper limit.
4. Select the variable of integration and start the calculation: press
variable.
Notice that FN= is required if you're integrating a programmed function, but not if
you're integrating an equation from the equation list.
You can halt a running integration calculation by pressing or and the
message will appear line 2. However, the calculation cannot be
resumed. No information about the integration is available until the calculation
finishes normally.
Pressing while an integration calculation is running will cancel the
operation. In this case, you should start again from the beginning.
To write a program for ∫ FN:
The program can use equations, ALG or RPN operations — in whatever
combination is most convenient.
1. Begin the program with a label. This label identifies the function that you want
to integrate (label).
2. Include an INPUT instruction for each variable, including the variable of
integration. INPUT instructions enable you to integrate with respect to any
variable in a multi–variable function. INPUT for the variable of integration is
ignored by the calculator, so you need to write only one program that contains
a separate INPUT instruction for every variable (including the variable of
integration).
If you include no INPUT instructions, the program uses the values stored in the
variables or entered at equation prompts.
3. Enter the instructions to evaluate the function.
ꢀ
A function programmed as a multi–line RPN or ALG sequence must
calculate the function values you want to integrate.
ꢀ
A function programmed as an equation is usually included as an
expression specifying the integrand — though it can be any type of
equation. If you want the equation to prompt for variable values instead of
including INPUT instructions, make sure flag 11 is set.
4. End the program with a RTN. Program execution should end with the value of
the function in the X–register.
Example: Program Using Equation.
The sine integral function in the example in chapter 8 is
sin x
x
t
0
Si(t) =
(
)dx
∫
This function can be evaluated by integrating a program that defines the integrand:
Defines the function.
The function as an expression. (Checksum and length:
0EE0 8).
Ends the subroutine
Checksum and length of program: D57E 17
Enter this program and integrate the sine integral function with respect to x from 0 to
2 (t = 2).
Keys:
Display:
Description:
(In RPN mode)
Selects Radians mode.
9 (2)
Selects label S as the integrand.
S
Enters lower and upper limits of
integration.
_
Integrates function from 0 to 2;
X
displays result.
∫
Restores Degrees mode.
9 (1)
Using Integration in a Program
Integration can be executed from a program. Remember to include or prompt for the
limits of integration before executing the integration, and remember that accuracy
and execution time are controlled by the display format at the time the program
runs. The two integration instructions appear in the program as:
label
∫ variable
The programmed ∫ FN instruction does not produce a labeled display (∫ = value)
since this might not be the significant output for your program (that is, you might
want to do further calculations with this number before displaying it). If you do want
this result displayed, add a PSE ( ) or STOP () instruction to display
the result in the X–register after the ∫ FN instruction.
If the PSE instruction immediately follows an equation that is displayed (Flag 10 set)
during each iteration of integrating or solving, the equation will be displayed for 1
second and execution will continue until the end of each iteration. During the
display of the equation, no scrolling or keyboard input is allowed.
Example: ∫ FN in a Program.
The "Normal and Inverse–Normal Distributions" program in chapter 16 includes an
integration of the equation of the normal density function
2
D−M
S
)
e−(
/2dD.
1
S 2π
D
M
∫
((D−M)÷S)2
The
÷2 function is calculated by the routine labeled F. Other routines
e
prompt for the known values and do the other calculations to find Q(D), the upper–
tail area of a normal curve. The integration itself is set up and executed from routine
Q:
∫
Recalls lower limit of integration.
Recalls upper limit of integration. (X = D.)
Specifies the function.
Integrates the normal function using the dummy variable D.
Restrictions on Solving and Integrating
The SOLVE variable and ∫ FN d variable instructions cannot call a routine that
contains another SOLVE or ∫ FN instruction. That is, neither of these instructions can
be used recursively. For example, attempting to calculate a multiple integral will
result in an ∫ ∫ error. Also, SOLVE and ∫ FN cannot call a routine that contains
an label instruction; if attempted, a or ∫ error
will be returned. SOLVE cannot call a routine that contains an ∫ FN instruction
(produces a ∫ error), just as ∫ FN cannot call a routine that contains a
SOLVE instruction (produces an ∫ error).
The SOLVE variable and ∫ FN d variable instructions in a program use one of the 20
pending subroutine returns in the calculator. (Refer to "Nested Subroutines" in
chapter 14.)
16
Statistics Programs
Curve Fitting
This program can be used to fit one of four models of equations to your data. These
models are the straight line, the logarithmic curve, the exponential curve and the
power curve. The program accepts two or more (x, y) data pairs and then calculates
the correlation coefficient, r, and the two regression coefficients, m and b. The
ˆ
program includes a routine to calculate the estimates x and ˆ. (For definitions of
y
these values, see "Linear Regression" in chapter 12.)
Samples of the curves and the relevant equations are shown below. The internal
regression functions of the HP 35s are used to compute the regression coefficients.
Exponential Curve Fit
Straight Line Fit
E
S
y
y
Mx
y = Be
y = B + Mx
x
x
Logarithmic Curve Fit
Power Curve Fit
L
P
y
y
M
y = B + MIn x
y = Bx
x
x
To fit logarithmic curves, values of x must be positive. To fit exponential curves,
values of y must be positive. To fit power curves, both x and y must be positive. A
error will occur if a negative number is entered for these cases.
Data values of large magnitude but relatively small differences can incur problems
of precision, as can data values of greatly different magnitudes. Refer to "Limitations
in Precision of Data" in chapter 12.
16-2 Statistics Programs
Program Listing:
Program Lines:
(In RPN mode)
Description
This routine sets, the status for the straight–line model.
Clears flag 0, the indicator for ln X.
Clears flag 1, the indicator for In Y.
Branches to common entry point Z.
Checksum and length: 8E85 12
This routine sets the status for the logarithmic model.
Sets flag 0, the indicator for ln X.
Clears flag 1, the indicator for ln Y
Branches to common entry point Z.
Checksum and length: AD1B 12
This routine sets the status for the exponential model.
Clears flag 0, the indicator for ln X.
Sets flag 1, the indicator for ln Y.
Branches to common entry point Z.
Checksum and length: D6F1 12
This routine sets the status for the power model.
Sets flag 0, the indicator for ln X.
Sets flag 1, the indicator for ln Y.
Checksum and length: 3800 9
Defines common entry point for all models.
Clears the statistics registers. Press
Sets the loop counter to zero for the first input.
(4Σ)
Checksum and length: 8611 10
Defines the beginning of the input loop.
Adjusts the loop counter by one to prompt for input.
Stores loop counter in X so that it will appear with the
prompt for X.
Displays counter with prompt and stores X input.
Program Lines:
(In RPN mode)
Description
If flag 0 is set . . .
. . . takes the natural log of the X–input.
Stores that value for the correction routine.
Prompts for and stores Y.
If flag 1 is set . . .
. . . takes the natural log of the Y–input.
Accumulates B and R as x,y–data pair in statistics registers.
Loops for another X, Y pair.
Checksum and length: 9560 46
Defines the beginning of the "undo" routine.
Recalls the most recent data pair.
Deletes this pair from the statistical accumulation.
Loops for another X, Y pair.
Checksum and length: A79F 15
Defines the start of the output routine
Calculates the correlation coefficient.
Stores it in R.
Displays the correlation coefficient.
Calculates the coefficient b.
If flag 1 is set takes the natural antilog of b.
Stores b in B.
Displays value.
Calculates coefficient m.
Stores m in M.
Displays value.
Checksum and length: 850C 36
Defines the beginning of the estimation (projection) loop.
16-4 Statistics Programs
Program Lines:
(In RPN mode)
Description
Displays, prompts for, and, if changed, stores x–value in X.
If flag 0 is set . . .
Branches to K001
Branches to M001
Stores ˆ–value in Y.
y
Displays, prompts for, and, if changed, stores y–value in Y.
If flag 0 is set . . .
Branches to O001
Branches to N001
ˆ
Stores x in X for next loop.
Loops for another estimate.
Checksum and length: C3B7 36
This subroutine calculates ˆ for the straight–line model.
y
Calculates ˆ = MX + B.
y
Returns to the calling routine.
Checksum and length: 9688 15
ˆ
This subroutine calculates x for the straight–line model.
ˆ
Calculates x =(Y – B) ÷ M.
Returns to the calling routine.
Checksum and length: 9C0F 15
This subroutine calculates ˆ for the logarithmic model.
y
Calculates ˆ = M In X + B.
y
Returns to the calling routine.
Program Lines:
(In RPN mode)
Description
Checksum and length: 889C 18
ˆ
This subroutine calculates x for the logarithmic model.
(Y – B) ÷ M
ˆ
Calculates x = e
Returns to the calling routine.
Checksum and length: 0DBE 18
This subroutine calculates ˆ for the exponential model.
y
MX
Calculates ˆ= Be
.
y
Branches to M005
Checksum and length: 9327 18
ˆ
This subroutine calculates x for the exponential model.
ˆ
Calculates x = (ln (Y ÷ B)) ÷ M.
Goes to N005
Checksum and length: 7219 18
This subroutine calculates ˆ for the power model.
y
M
Calculates Y= B (X ).
Goes to K005
Checksum and length: 11B3 18
This subroutine calculates x for the power model.
ˆ
16-6 Statistics Programs
Program Lines:
(In RPN mode)
Description
1/M
ˆ
Calculates x= (Y/B )
Goes to O005
Checksum and length: 8524 21
Determines if D001 or B001 should be run
If flag 1 is set . . .
Executes D001
Executes B001
Goes to Y006
Checksum and length: 4BFA 15
Determines if C001 or A001 should be run
If flag 1 is set . . .
Executes C001
Executes A001
Goes to Y006
Checksum and length: 1C4D 15
Determines if J001 or H001 should be run
If flag 1 is set . . .
Executes J001
Executes H001
Goes to Y011
Checksum and length: 0AA5 15
Determines if I001 or G001 should be run
If flag 1 is set . . .
Executes I001
Executes G001
Goes to Y011
Checksum and length: 666D 15
Flags Used:
Flag 0 is set if a natural log is required of the X input. Flag 1 is set if a natural log is
required of the Y input.
If flag 1 is set in routine N, then I001 is executed. If flag 1 is clear, G001 is
executed.
Program instructions:
1. Key in the program routines; press when done.
2. Press and select the type of curve you wish to fit by pressing:
ꢀ S for a straight line;
ꢀ L for a logarithmic curve;
ꢀ E for an exponential curve; or
ꢀ P for a power curve.
3. Key in x–value and press .
4. Key in y–value and press .
5. Repeat steps 3 and 4 for each data pair. If you discover that you have made
an error after you have pressed in step 3 (with the value prompt still
visible), press again (displaying the value prompt) and press
U to undo (remove) the last data pair. If you discover that you
made an error after step 4, press U. In either case, continue at
step 3.
6. After all data are keyed in, press R to see the correlation
coefficient, R.
7. Press to see the regression coefficient B.
8. Press to see the regression coefficient M.
ˆ
9. Press to see the value prompt for the x, ˆ–estimation routine.
y
10. If you wish to estimate ˆ based on x, key in x at the value prompt, then
y
press to see ˆ ().
y
ˆ
11. If you wish to estimate x based on y, press until you see the value
ˆ
prompt, key in y, then press to see x ().
12. For more estimations, go to step 10 or 11.
16-8 Statistics Programs
13. For a new case, go to step 2.
Variables Used:
B
Regression coefficient (y–intercept of a straight line); also
used for scratch.
M
R
X
Regression coefficient (slope of a straight line).
Correlation coefficient; also used for scratch.
The x–value of a data pair when entering data; the
ˆ
hypothetical x when projecting ˆ; or x (x–estimate)
when given a hypothetical y.
y
Y
The y–value of a data pair when entering data; the
ˆ
hypothetical y when projecting x; or ˆ (y–estimate)
when given a hypothetical x.
y
Statistics registers
Statistical accumulation and computation.
Example 1:
Fit a straight line to the data below. Make an intentional error when keying in the
third data pair and correct it with the undo routine. Also, estimate y for an x value
of 37. Estimate x for a y value of 101.
X
Y
40.5
38.6
102
37.9
100
36.2
97.5
35.1
95.5
34.6
94
104.5
Keys:
Display:
Description:
(In RPN mode)
S
Starts straight–line routine.
Enters x–value of data pair.
value
Enters y–value of data pair.
Enters x–value of data pair.
Enters y–value of data pair.
Now intentionally enter 379 instead of 37.9 so that you can see how to correct
incorrect entries.
Keys:
Display:
Description:
(In RPN mode)
Enters wrong x–value of data pair.
Retrieves prompt.
Deletes the last pair. Now proceed
with the correct data entry.
U
Enters correct x–value of data pair.
Enters y–value of data pair.
Enters x–value of data pair.
Enters y–value of data pair.
Enters x–value of data pair.
Enters y–value of data pair.
Enters x–value of data pair.
Enters y–value of data pair.
Calculates the correlation
coefficient.
R
16-10 Statistics Programs
Calculates regression coefficient B.
Calculates regression coefficient M.
Prompts for hypothetical x–value.
Stores 37 in X and calculates ˆ.
y
ˆ
Stores 101 in Y and calculates x.
Example 2:
Repeat example 1 (using the same data) for logarithmic, exponential, and power
curve fits. The table below gives you the starting execution label and the results (the
correlation and regression coefficients and the x– and y– estimates) for each type of
curve. You will need to reenter the data values each time you run the program for a
different curve fit.
Logarithmic
Exponential
Power
L E P
To start:
R
B
M
0.9965
–139.0088
65.8446
0.9945
51.1312
0.0177
0.9959
8.9730
0.6640
98.7508
38.2857
98.5870
38.3628
98.6845
38.3151
Y ( ˆ when X=37)
y
ˆ
X (x when Y=101)
Normal and Inverse–Normal Distributions
Normal distribution is frequently used to model the behavior of random variation
about a mean. This model assumes that the sample distribution is symmetric about
the mean, M, with a standard deviation, S, and approximates the shape of the bell–
shaped curve shown below. Given a value x, this program calculates the probability
that a random selection from the sample data will have a higher value. This is
known as the upper tail area, Q(x). This program also provides the inverse: given a
value Q(x), the program calculates the corresponding value x.
Statistics Programs 16-11
y
"Upper tail"
area
Q [x]
x
x
x
2
1
Q(x) = 0.5−
e
−((x−x)÷σ ) ÷2dx
∫
x
σ 2π
This program uses the built–in integration feature of the HP 35s to integrate the
equation of the normal frequency curve. The inverse is obtained using Newton's
method to iteratively search for a value of x which yields the given probability Q(x).
16-12 Statistics Programs
Program Listing:
Program Lines:
(In RPN mode)
Description
This routine initializes the normal distribution program.
Stores default value for mean.
Prompts for and stores mean, M.
Stores default value for standard deviation.
Prompts for and stores standard deviation, S.
Stops displaying value of standard deviation.
Checksum and length: 70BF 26
This routine calculates Q(X) given X.
Prompts for and stores X.
Calculates upper tail area.
Stores value in Q so VIEW function can display it.
Displays Q(X).
Loops to calculate another Q(X).
Checksum and length: 042A 18
This routine calculates X given Q(X).
Prompts for and stores Q(X).
Recalls the mean.
Stores the mean as the guess for X, called X
.
guess
Checksum and length: A970 12
This label defines the start of the iterative loop.
Calculates (Q( X )– Q(X)).
guess
ꢀ
Calculates the derivative at X
.
guess
Calculates the correction for X
.
guess
Statistics Programs 16-13
Program Lines:
(In RPN mode)
Description
Adds the correction to yield a new X
.
guess
Tests to see if the correction is significant.
Goes back to start of loop if correction is significant.
Continues if correction is not significant.
Displays the calculated value of X.
Loops to calculate another X.
Checksum and length: EDF4 57
∫
This subroutine calculates the upper–tail area Q(x).
Recalls the lower limit of integration.
Recalls the upper limit of integration.
Selects the function defined by LBL F for integration.
Integrates the normal function using the dummy variable D.
π
Calculates S ×
.
2π
Stores result temporarily for inverse routine.
Adds half the area under the curve since we integrated
using the mean as the lower limit.
Returns to the calling routine.
Checksum and length: 8387 52
This subroutine calculates the integrand for the normal
−((X −M)÷S)2 ÷2
function e
16-14 Statistics Programs
Program Lines:
(In RPN mode)
Description
Returns to the calling routine.
Checksum and length: B3EB 31
Flags Used:
None.
Remarks:
The accuracy of this program is dependent on the display setting. For inputs in the
area between 3 standard deviations, a display of four or more significant figures
is adequate for most applications.
At full precision, the input limit becomes 5 standard deviations. Computation time
is significantly less with a lower number of displayed digits.
In routine Q, the constant 0.5 may be replaced by 2 and .
You do not need to key in the inverse routine (in routines I and T) if you are not
interested in the inverse capability.
Program Instructions:
1. Key in the program routines; press when done.
2. Press S.
3. After the prompt for M, key in the population mean and press . (If the
mean is zero, just press .)
Statistics Programs 16-15
4. After the prompt for S, key in the population standard deviation and press
. (If the standard deviation is 1, just press .)
5. To calculate X given Q(X), skip to step 9 of these instructions.
6. To calculate Q(X) given X, D.
7. After the prompt, key in the value of X and press . The result, Q(X), is
displayed.
8. To calculate Q(X) for a new X with the same mean and standard deviation,
press and go to step 7.
9. To calculate X given Q(X), press I.
10. After the prompt, key in the value of Q(X) and press . The result, X, is
displayed.
11. To calculate X for a new Q(X) with the same mean and standard deviation,
press and go to step 10.
Variables Used:
D
M
Q
S
Dummy variable of integration.
Population mean, default value zero.
Probability corresponding to the upper–tail area.
Population standard deviation, default value of 1.
Variable used temporarily to pass the value S ×
T
to the inverse
2π
program.
X
Input value that defines the left side of the upper–tail area.
Example 1:
Your good friend informs you that your blind date has "3σ" intelligence. You
interpret this to mean that this person is more intelligent than the local population
except for people more than three standard deviations above the mean.
Suppose that you intuit that the local population contains 10,000 possible blind
dates. How many people fall into the "3σ" band? Since this problem is stated in
terms of standard deviations, use the default value of zero for M and 1 for S.
Keys:
Display:
Description:
(In RPN mode)
S
Starts the initialization routine.
16-16 Statistics Programs
Accepts the default value of zero for M.
Accepts the default value of 1 for S.
Starts the distribution program and
D
prompts for X.
value
Enters 3 for X and starts computation of
Q(X). Displays the ratio of the
population smarter than everyone
within three standard deviations of the
mean.
Multiplies by the population. Displays
the approximate number of blind dates
in the local population that meet the
criteria.
Since your friend has been known to exaggerate from time to time, you decide to
see how rare a "2σ" date might be. Note that the program may be rerun simply by
pressing .
Keys:
Display:
Description:
Resumes program.
(In RPN mode)
Enters X–value of 2 and calculates
Q(X).
Multiplies by the population for the
revised estimate.
Example 2:
The mean of a set of test scores is 55. The standard deviation is 15.3. Assuming that
the standard normal curve adequately models the distribution, what is the
probability that a randomly selected student scored at least 90? What is the score
that only 10 percent of the students would be expected to have surpassed? What
would be the score that only 20 percent of the students would have failed to
achieve?
Statistics Programs 16-17
Keys:
Display:
Description:
(In RPN mode)
Starts the initialization routine.
Stores 55 for the mean.
S
Stores 15.3 for the standard deviation.
Starts the distribution program and
prompts for X.
D
value
Enters 90 for X and calculates Q(X).
Thus, we would expect that only about 1 percent of the students would do better
than score 90.
Keys:
Display:
Description:
(In RPN mode)
Starts the inverse routine.
I
Stores 0.1 (10 percent) in Q(X) and
calculates X.
Resumes the inverse routine.
Stores 0.8 (100 percent minus 20
percent) in Q(X) and calculates X.
Grouped Standard Deviation
The standard deviation of grouped data, S , is the standard deviation of data
xy
points x , x , ... , x , occurring at positive integer frequencies f , f , ... , f .
1
2
n
1
2
n
(
xifi)2
f
∑
x 2f −
∑
i
i
∑
i
Sxg
=
(
f ) −1
∑
i
16-18 Statistics Programs
This program allows you to input data, correct entries, and calculate the standard
deviation and weighted mean of the grouped data.
Program Listing:
Program Lines:
(In ALG mode)
Description
Start grouped standard deviation program.
Clears statistics registers (-27 through -32).
Clears the count N.
Checksum and length: E5BC 13
Input statistical data points.
Stores data point in X.
Stores data–point frequency in F.
Enters increment for N.
Recalls data–point frequency f.
i
Checksum and length: 3387 19
Accumulate summations.
Stores index for register -27.
Updates
in register -27.
f
∑
i
xifi
Stores index for register -28.
Updates
in register -28.
xf
∑
i i
xi2f
i
Stores index for register -30.
Statistics Programs 16-19
Program Lines:
(In ALG mode)
Description
Updates
xi2f in register -30.
∑
i
Increments (or decrements) N.
Displays current number of data pairs.
Goes to label line numberI for next data input.
Checksum and length: F6CB 84
Calculates statistics for grouped data.
Grouped standard deviation.
Displays grouped standard deviation.
Weighted mean.
Displays weighted mean.
Goes back for more points.
Checksum and length: DAF2 24
Undo data–entry error.
Enters decrement for N.
Recalls last data frequency input.
Changes sign of f.
i
Adjusts count and summations.
Checksum and length: 03F4 23
16-20 Statistics Programs
Flags Used:
None.
Program Instructions:
1. Key in the program routines; press when done.
2. Press S to start entering new data.
3. Key in x –value (data point) and press .
i
4. Key in f –value (frequency) and press .
i
5. Press after VIEWing the number of points entered.
6. Repeat steps 3 through 5 for each data point.
If you discover that you have made a data-entry error (x or f ) after you have
i
i
pressed in step 4, press U and then press again.
Then go back to step 3 to enter the correct data.
7. When the last data pair has been input, press G to calculate
and display the grouped standard deviation.
8. Press to display the weighted mean of the grouped data.
9. To add additional data points, press and continue at step 3.
To start a new problem, start at step 2.Variables Used:
X
F
Data point.
Data–point frequency.
N
S
M
i
Data–pair counter.
Grouped standard deviation.
Weighted mean.
Index variable used to indirectly address the correct
statistics register.
Register -27
Register -28
Register -30
Summation Σf.
i
Summation Σx f.
i i
2
Summation Σx f.
i
i
Example:
Enter the following data and calculate the grouped standard deviation.
Statistics Programs 16-21
Group
1
5
2
8
3
13
4
15
5
22
6
37
x
i
f
17
26
37
43
73
115
i
Keys:
Display:
Description:
(In ALG mode)
Prompts for the first x .
S
i
value
Stores 5 in X; prompts for first f.
i
value
Stores 17 in F; displays the counter.
Prompts for the second x .
i
Prompts for second f.
i
Displays the counter.
Prompts for the third x .
i
Prompts for the third f.
i
Displays the counter.
You erred by entering 14 instead of 13 for x . Undo your error by executing routine
3
U:
Removes the erroneous data;
U
displays the revised counter.
Prompts for new third x.
i
Prompts for the new third f.
i
Displays the counter.
Prompts for the fourth x.
i
Prompts for the fourth f.
i
16-22 Statistics Programs
Displays the counter.
Prompts for the fifth x.
i
Prompts for the fifth f.
i
Displays the counter.
Prompts for the sixth x .
i
Prompts for the sixth f.
i
G
Displays the counter.
Calculates and displays the
grouped standard deviation (sx)
of the six data points.
Calculates and displays
weighted mean ( x ).
Clears VIEW.
17
Miscellaneous Programs and Equations
Time Value of Money
Given any four of the five values in the "Time–Value–of–Money equation" (TVM),
you can solve for the fifth value. This equation is useful in a wide variety of financial
applications such as consumer and home loans and savings accounts.
The TVM equation is:
−N
⎡
⎤
1− (1+ I 100)
P
+ F(1+ (I 100))−N + B = 0
⎢
⎣
⎥
⎦
I 100
Balance, B
Payments, P
N
_
N 1
3
1
2
Future Value, F
The signs of the cash values (balance, B; payment, P; and future balance, F)
correspond to the direction of the cash flow. Money that you receive has a positive
sign while money that you pay has a negative sign. Note that any problem can be
viewed from two perspectives. The lender and the borrower view the same problem
with reversed signs.
Equation Entry:
Key in this equation:
Keys:
Display:
Description:
(In RPN mode)
or current equation
_
Selects Equation
mode.
Starts entering
P
equation.
4
4
I
ꢆ
ꢆ
_
_
Õ
NÕ
I F
4 I
Õ
N
B
_
_
_
Terminates the
equation.
ꢆ
Checksum and length.
(hold)
Remarks:
The TVM equation requires that I must be non–zero to avoid a error.
If you're solving for I and aren't sure of its current value, press I
before you begin the SOLVE calculation (I).
The order in which you're prompted for values depends upon the variable you're
solving for.
SOLVE instructions:
1. If your first TVM calculation is to solve for interest rate, I, press
I.
2. Press . If necessary, press ×or Øto scroll through the equation list
until you come to the TVM equation.
3. Do one of the following five operations:
a. Press Nto calculate the number of compounding periods.
b. Press Ito calculate periodic interest.
For monthly payments, the result returned for I is the monthly interest rate,
i; press 12 to see the annual interest rate.
c. Press B to calculate initial balance of a loan or savings
account.
d. Press Pto calculate periodic payment.
e. Press Fto calculate future value or balance of a loan.
4. Key in the values of the four known variables as they are prompted for; press
after each value.
5. When you press the last , the value of the unknown variable is calculated
and displayed.
6. To calculate a new variable, or recalculate the same variable using different
data, go back to step 2.
SOLVE works effectively in this application without initial guesses.
Variables Used:
N
I
The number of compounding periods.
The periodic interest rate as a percentage. (For example, if the
annual interest rate is 15% and there are 12 payments per year,
the periodic interest rate, i, is 15÷12=1.25%.)
The initial balance of loan or savings account.
The periodic payment.
B
P
F
The future value of a savings account or balance of a loan.
Example:
Part 1. You are financing the purchase of a car with a 3–year (36–month) loan at
10.5% annual interest compounded monthly. The purchase price of the car is
$7,250. Your down payment is $1,500.
_
B = 7,250 1,500
I = 10.5% per year
N = 36 months
F = 0
P =
?
Keys:
Display:
Description:
(In RPN mode)
Selects FIX 2 display format.
8 ()
Displays the leftmost part of the
TVM equation.
ꢆ
(Øas needed )
Selects P; prompts for I.
P
value
Converts your annual interest
rate input to the equivalent
monthly rate.
Stores 0.88 in I; prompts for N.
value
Stores 36 in N; prompts for F.
value
Stores 0 in F; prompts for B.
value
Calculates B, the beginning
loan balance.
Stores 5750 in B; calculates
monthly payment, P.
The answer is negative since the loan has been viewed from the borrower's
perspective. Money received by the borrower (the beginning balance) is positive,
while money paid out is negative.
Part 2. What interest rate would reduce the monthly payment by $10?
Keys:
Display:
Description:
(In RPN mode)
Displays the leftmost hart of the TVM
equation.
ꢆ
Selects I; prompts for P.
I
Rounds the payment to two decimal
places.
Calculates new payment.
Stores –176.89 in P; prompts for N.
Retains 36 in N; prompts for F.
Retains 0 in F; prompts for B.
Retains 5750 in B; calculates
monthly interest rate.
Calculates annual interest rate.
Part 3. Using the calculated interest rate (6.75%), assume that you sell the car
after 2 years. What balance will you still owe? In other words, what is the future
balance in 2 years?
Note that the interest rate, I, from part 2 is not zero, so you won't get a
error when you calculate the new I.
Keys:
Display:
Description:
(In RPN mode)
Displays leftmost part of the TVM
equation.
ꢆ
Selects F; prompts for P.
F
Retains P; prompts for I.
Retains 0.56 in I; prompts for N.
Stores 24 in N; prompts for B.
Retains 5750 in B; calculates F, the
future balance. Again, the sign is
negative, indicating that you must,
pay out this money.
Sets FIX 4 display format.
8
()
Prime Number Generator
This program accepts any positive integer greater than 3. If the number is a prime
number (not evenly divisible by integers other than itself and 1), then the program
returns the input value. If the input is not a prime number, then the program returns
the first prime number larger than the input.
The program identifies non–prime numbers by exhaustively trying all possible
factors. If a number is not prime, the program adds 2 (assuring that the value is still
odd) and tests to see if it has found a prime. This process continues until a prime
number is found.
LBL Y
VIEW Prime
LBL Z
Note: x is the
value in the
X-register.
P + 2
→
x
LBL P
Start
x
3
→
→
P
D
LBL X
yes
x = 0
?
no
yes
no
Program Listing:
Program Lines:
(In ALG mode)
Description
This routine displays prime number P.
Checksum and length: 2CC5 6
This routine adds 2 to P.
Checksum and length: EFB2 9
This routine stores the input value for P.
Tests for even input
Increments P if input an even number.
Stores 3 in test divisor, D
Checksum and length: EA89 47
This routine tests P to see if it is prime.
Finds the fractional part of P ÷ D.
Tests for a remainder of zero (not prime).
If the number is not prime, tries next possibility.
>
Tests to see whether all possible factors have been tried.
If all factors have been tried, branches to the display
routine.
Branches to test potential prime with new factor.
Checksum and length: C6B5 53
Flags Used:
None.
Program Instructions:
1. Key in the program routines; press when done.
2. Key in a positive integer greater than 3.
3. Press P to run program. Prime number, P will be displayed.
4. To see the next prime number, press .
Variables Used:
P
D
Prime value and potential prime values.
Divisor used to test the current value of P.
Remarks:
No test is made to ensure that the input is greater than 3.
Example:
What is the first prime number after 789? What is the next prime number?
Keys:
Display:
Description:
(In ALG mode)
Calculates next prime number after
789.
P
Calculates next prime number after
797.
Cross Product in Vectors
Here is an example showing how to use the program function to calculate the cross
product.
Cross product:
v
× v = (YW – ZV )i + (ZU – XW)j + (XV – YU)k
1
2
where
v = X i + Y j + Z k
1
and
v =U i + V j + W k
2
Program Lines:
(In RPN mode)
Description
Defines the beginning of the rectangular input/display
routine.
Displays or accepts input of X.
Displays or accepts input of Y.
Displays or accepts input of Z.
Goes to R001 to input vectors
Checksum and length: D82E 15
Defines the beginning of the vector–enter routine.
Copies values in X, Y and Z to U, V and W
respectively.
Goes to R001 to input vectors
Checksum and length: B6AF 24
Program Lines:
(In RPN mode)
Description
Defines the beginning of the cross–product routine.
Calculates (YW – ZV), which is the X component.
Calculates (ZU – WX), which is the Y component.
Stores (XV – YU), which is the Z component.
Stores X component.
Stores Y component.
Goes to R001 to input vectors
Checksum and length: 838D 72
Example:
Calculate the cross product of two vectors, v1=2i+5j+4k and v2=i-2j+3k
Keys:
R
Display:
Description:
Run R routine to input vector value
Input v2 of x-component
Input v2 of y-component
Input v2 of z-component
z
Run E routine to exchange v2 in U,
V, and W variables
E
Input v1 of x-component
Input v1 of y-component
Input v1 of z-component
Run C routine to calculate x-
component of cross product
Calculate y-component of cross
C
product
Calculate z-component of cross
product
A
Support, Batteries, and Service
Calculator Support
You can obtain answers to questions about using your calculator from our
Calculator Support Department. Our experience shows that many customers have
similar questions about our products, so we have provided the following section,
"Answers to Common Questions." If you don't find an answer to your question,
contact the Calculator Support Department listed on page A–8.
Answers to Common Questions
Q: How can I determine if the calculator is operating properly?
A: Refer to page A–5, which describes the diagnostic self–test.
Q: My numbers contain commas instead of periods as decimal points. How do I
restore the periods?
A: Use the 85(5) function (page 1–23).
Q: How do l change the number of decimal places in the display?
A: Use the 8 menu (page 1–21).
Q: How do I clear all or portions of memory?
A:
displays the CLEAR menu, which allows you to clear x (the number
in the X-register), all direct variables, all of memory, all statistical data, all stack
levels and all indirect variables
Q: What does an "E" in a number (for example, ) mean?
A-1
–13
A: Exponent of ten; that is, 2.51 × 10
.
Q: The calculator has displayed the message . What should I do?
A: You must clear a portion of memory before proceeding. (See appendix B.)
Q: Why does calculating the sine (or tangent) of π radians display a very small
number instead of 0?
A: π cannot be represented exactly with the 12–digit precision of the calculator.
Q: Why do I get incorrect answers when I use the trigonometric functions?
A: You must make sure the calculator is using the correct angular mode (9
, , or ).
Q: What does an annunciator in the display mean?
A: It indicates something about the status of the calculator. See "Annunciators" in
chapter 1.
Q: Numbers show up as fractions. How do I get decimal numbers?
A: Press .
Environmental Limits
To maintain product reliability, observe the following temperature and humidity
limits:
ꢀ
ꢀ
ꢀ
Operating temperature: 0 to 45 °C (32 to 113 °F).
°
Storage temperature: –20 to 65 C (–4 to 149 °F).
°
°
Operating and storage humidity: 90% relative humidity at 40 C (104 F)
maximum.
A-2
Changing the Batteries
The calculator is powered by two 3-volt lithium coin batteries, CR2032.
Replace the batteries as soon as possible when the low battery annunciator ( )
appears. If the battery annunciator is on, and the display dims, you may lose data.
If data is lost, the message is displayed.
Once you've removed the batteries, replace them within 2 minutes to avoid losing
stored information. (Have the new batteries readily at hand before you open the
battery compartment.)
To install batteries:
1. Have two fresh button–cell batteries at hand. Avoid touching the battery
terminals — handle batteries only by their edges.
2. Make sure the calculator is OFF. Do not press ON ( ) again until the entire
battery–changing procedure is completed. If the calculator is ON when the
batteries are removed, the contents of Continuous Memory will be erased.
用 BK+B
3. Turn the calculator over and slide off the battery cover.
4. To prevent memory loss, never remove two old batteries at the same time. Be
sure to remove and replace the batteries one at a time.
A-3
Do not mutilate, puncture, or dispose of batteries in fire. The
batteries can burst or explode, releasing hazardous
chemicals.
Warning
5. Insert a new CR2032 lithium battery, making sure that the positive sign (+) is
facing outward.
6. Remove and insert the other battery as in steps 4 through 5. Make sure that the
positive sign (+) on each battery is facing outward.
7. Replace the battery compartment cover.
8. Press .
Testing Calculator Operation
Use the following guidelines to determine if the calculator is working properly. Test
the calculator after every step to see if its operation has been restored. If your
calculator requires service, refer to page A–8.
ꢀ
The calculator won't turn on (steps 1–4) or doesn't respond when you press
the keys (steps 1–3):
1. Reset the calculator. Hold down the key and press . It may be
necessary to repeat these reset keystrokes several times.
2. Erase memory. Press and hold down , then press and hold down both
and 6. Memory is cleared and the message is
displayed when you release all three keys.
A-4
3. Remove the batteries (see "Changing the Batteries") and lightly press a
coin against both battery contacts in the calculator. Replace the batteries
and turn on the calculator. It should display .
4. If the calculator still does not respond to keystrokes, use a thin, pointed
object to press the RESET hole. Stored data usually remain intact.
Reset Hole
If these steps fail to restore calculator operation, it requires service.
ꢀ
If the calculator responds to keystrokes but you suspect that it is
malfunctioning:
1. Do the self–test described in the next section. If the calculator fails the self
test, it requires service.
2. If the calculator passes the self–test, you may have made a mistake
operating the calculator. Reread portions of the manual and check
"Answers to Common Questions" (page A–1).
3. Contact the Calculator Support Department listed on page A–8.
The Self–Test
If the display can be turned on, but the calculator does not seem to be operating
properly, do the following diagnostic self–test.
1. Hold down the key, then press at the same time.
2. Press any key eight times and watch the various patterns displayed. After
you've pressed the key eight times, the calculator displays the copyright
message © and then the message .
3. Press the keys in the following sequence:
A-5
→ → → 9 → × → Ö → Õ → → →
→ 6 → Ø → → → → → → →
→→→4→→→ → →→→→
→ → → →→→→→→ → → →
→
ꢀ
If you press the keys in the proper order and they are functioning properly,
the calculator displays followed by two–digit numbers. (The
calculator is counting the keys using hexadecimal base.)
ꢀ
If you press a key out of order, or if a key isn't functioning properly, the
next keystroke displays a fail message (see step 4).
4. The self–test produces one of these two results:
ꢀ
ꢀ
The calculator displays if it passed the self–test. Go to step 5.
The calculator displays followed by a one–digit number, if it
failed the self–test. If you received the message because you pressed a key
out of order, reset the calculator (hold down , press ) and do the
self test again. If you pressed the keys in order, but got this message,
repeat the self–test to verify the results. If the calculator fails again, it
requires service (see page A–8). Include a copy of the fail message with
the calculator when you ship it for service.
5. To exit the self–test, reset the calculator (hold down and press ).
Pressing and 9 starts a continuous self–test that is used at the factory.
You can halt this factory test by pressing any key.
A-6
Warranty
HP 35s Scientific Calculator; Warranty period: 12 months
1. HP warrants to you, the end-user customer, that HP hardware, accessories and
supplies will be free from defects in materials and workmanship after the date
of purchase, for the period specified above. If HP receives notice of such
defects during the warranty period, HP will, at its option, either repair or
replace products which prove to be defective. Replacement products may be
either new or like-new.
2. HP warrants to you that HP software will not fail to execute its programming
instructions after the date of purchase, for the period specified above, due to
defects in material and workmanship when properly installed and used. If HP
receives notice of such defects during the warranty period, HP will replace
software media which does not execute its programming instructions due to
such defects.
3. HP does not warrant that the operation of HP products will be uninterrupted or
error free. If HP is unable, within a reasonable time, to repair or replace any
product to a condition as warranted, you will be entitled to a refund of the
purchase price upon prompt return of the product with proof of purchase.
4. HP products may contain remanufactured parts equivalent to new in
performance or may have been subject to incidental use.
5. Warranty does not apply to defects resulting from (a) improper or inadequate
maintenance or calibration, (b) software, interfacing, parts or supplies not
supplied by HP, (c) unauthorized modification or misuse, (d) operation outside
of the published environmental specifications for the product, or (e) improper
site preparation or maintenance.
A-7
6. HP MAKES NO OTHER EXPRESS WARRANTY OR CONDITION WHETHER
WRITTEN OR ORAL. TO THE EXTENT ALLOWED BY LOCAL LAW, ANY
IMPLIED WARRANTY OR CONDITION OF MERCHANTABILITY,
SATISFACTORY QUALITY, OR FITNESS FOR A PARTICULAR PURPOSE IS
LIMITED TO THE DURATION OF THE EXPRESS WARRANTY SET FORTH
ABOVE. Some countries, states or provinces do not allow limitations on the
duration of an implied warranty, so the above limitation or exclusion might not
apply to you. This warranty gives you specific legal rights and you might also
have other rights that vary from country to country, state to state, or province to
province.
7. TO THE EXTENT ALLOWED BY LOCAL LAW, THE REMEDIES IN THIS
WARRANTY STATEMENT ARE YOUR SOLE AND EXCLUSIVE REMEDIES.
EXCEPT AS INDICATED ABOVE, IN NO EVENT WILL HP OR ITS SUPPLIERS BE
LIABLE FOR LOSS OF DATA OR FOR DIRECT, SPECIAL, INCIDENTAL,
CONSEQUENTIAL (INCLUDING LOST PROFIT OR DATA), OR OTHER
DAMAGE, WHETHER BASED IN CONTRACT, TORT, OR OTHERWISE. Some
countries, States or provinces do not allow the exclusion or limitation of
incidental or consequential damages, so the above limitation or exclusion may
not apply to you.
8. The only warranties for HP products and services are set forth in the express
warranty statements accompanying such products and services. HP shall not be
liable for technical or editorial errors or omissions contained herein.
FOR CONSUMER TRANSACTIONS IN AUSTRALIA AND NEW ZEALAND:
THE WARRANTY TERMS CONTAINED IN THIS STATEMENT, EXCEPT TO
THE EXTENT LAWFULLY PERMITTED, DO NOT EXCLUDE, RESTRICT OR
MODIFY AND ARE IN ADDITION TO THE MANDATORY STATUTORY
RIGHTS APPLICABLE TO THE SALE OF THIS PRODUCT TO YOU.
Customer Support
AP
Country :
Telephone numbers
Australia
1300-551-664 or
03-9841-5211
A-8
China
010-68002397
2805-2563
+65 6100 6682
+852 2805-2563
+65 6100 6682
09-574-2700
+65 6100 6682
6100 6682
2-561-2700
Hong Kong
Indonesia
Japan
Malaysia
New Zealand
Philippines
Singapore
South Korea
Taiwan
+852 2805-2563
Thailand
Vietnam
+65 6100 6682
+65 6100 6682
EMEA
Country :
Austria
Telephone numbers
01 360 277 1203
02 620 00 86
02 620 00 85
296 335 612
82 33 28 44
Belgium
Belgium
Czech Republic
Denmark
Finland
09 8171 0281
01 4993 9006
069 9530 7103
210 969 6421
020 654 5301
01 605 0356
02 754 19 782
2730 2146
France
Germany
Greece
Netherlands
Ireland
Italy
Luxembourg
Norway
23500027
Portugal
021 318 0093
495 228 3050
0800980410
913753382
Russia
South Africa
Spain
Sweden
08 5199 2065
022 827 8780
Switzerland (French)
A-9
Switzerland (German)
Switzerland (Italian)
United Kingdom
01 439 5358
022 567 5308
0207 458 0161
LA
Country :
Telephone numbers
Anguila
1-800-711-2884
1-800-711-2884
0-800- 555-5000
800-8000 ♦ 800-711-2884
1-800-711-2884
1-800-711-2884
1-800-711-2884
800-100-193
Antigua
Argentina
Aruba
Bahamas
Barbados
Bermuda
Bolivia
Brazil
0-800-709-7751
1-800-711-2884
1-800-711-2884
001-800-872-2881 +
800-711-2884
British Virgin Islands
Cayman Island
Curacao
Chile
800-360-999
Colombia
01-8000-51-4746-8368
(01-8000-51- HP INVENT)
Costa Rica
0-800-011-0524
1-800-711-2884
1-800-711-2884
1-999-119 ♦ 800-711-2884
(Andinatel)
Dominica
Dominican Republic
Ecuador
1-800-225-528 ♦ 800-711-2884
(Pacifitel)
El Salvador
French Antilles
French Guiana
Grenada
800-6160
0-800-990-011♦ 800-711-2884
0-800-990-011♦ 800-711-2884
1-800-711-2884
Guadelupe
Guatemala
Guyana
0-800-990-011♦ 800-711-2884
1-800-999-5105
159 ♦ 800-711-2884
Haiti
183 ♦ 800-711-2884
Honduras
Jamaica
Martinica
Mexico
800-0-123 ♦ 800-711-2884
1-800-711-2884
0-800-990-011 ♦ 877-219-8671
01-800-474-68368 (800 HP
INVENT)
Montserrat
1-800-711-2884
Netherland Antilles
001-800-872-2881 ♦
800-711-2884
Nicaragua
Panama
Paraguay
1-800-0164 ♦ 800-711-2884
001-800-711-2884
(009) 800-541-0006
0-800-10111
Peru
Puerto Rico
St. Lucia
1-877 232 0589
1-800-478-4602
St Vincent
01-800-711-2884
1-800-711-2884
1-800-711-2884
156 ♦ 800-711-2884
1-800-711-2884
01-800-711-2884
1-800-711-2884
St. Kitts & Nevis
St. Marteen
Suriname
Trinidad & Tobago
Turks & Caicos
US Virgin Islands
Uruguay
0004-054-177
Venezuela
0-800-474-68368 (0-800 HP
INVENT)
NA
Country :
Telephone numbers
Canada
USA
800-HP-INVENT
800-HP INVENT
Please logon to http://www.hp.com for the latest service and support information.
Regulatory information
Federal Communications Commission Notice
This equipment has been tested and found to comply with the limits for a Class B
digital device, pursuant to Part 15 of the FCC Rules. These limits are designed to
provide reasonable protection against harmful interference in a residential
installation. This equipment generates, uses, and can radiate radio frequency
energy and, if not installed and used in accordance with the instructions, may cause
harmful interference to radio communications. However, there is no guarantee that
interference will not occur in a particular installation. If this equipment does cause
harmful interference to radio or television reception, which can be determined by
turning the equipment off and on, the user is encouraged to try to correct the
interference by one or more of the following measures:
• Reorient or relocate the receiving antenna.
• Increase the separation between the equipment and the receiver.
• Connect the equipment into an outlet on a circuit different from that to which
the receiver is connected.
• Consult the dealer or an experienced radio or television technician for help.
Modifications
The FCC requires the user to be notified that any changes or modifications made to
this device that are not expressly approved by Hewlett-Packard Company may void
the user’s authority to operate the equipment.
Declaration of Conformity for Products Marked with FCC Logo, United States Only
This device complies with Part 15 of the FCC Rules. Operation is subject to the
following two conditions: (1) this device may not cause harmful interference, and (2)
this device must accept any interference received, including interference that may
cause undesired operation.
If you have questions about the product that are not related to this declaration, write
to
Hewlett-Packard Company
P. O. Box 692000, Mail Stop 530113
Houston, TX 77269-2000
For questions regarding this FCC declaration, write to
Hewlett-Packard Company
P. O. Box 692000, Mail Stop 510101
Houston, TX 77269-2000
or call HP at 281-514-3333
To identify your product, refer to the part, series, or model number located on the
product.
Canadian Notice
This Class B digital apparatus meets all requirements of the Canadian Interference-
Causing Equipment Regulations.
Avis Canadien
Cet appareil numérique de la classe B respecte toutes les exigences du Règlement
sur le matériel brouilleur du Canada.
European Union Regulatory Notice
This product complies with the following EU Directives:
• Low Voltage Directive 2006/95/EC
• EMC Directive 2004/108/EC
Compliance with these directives implies conformity to applicable harmonized
European standards (European Norms) which are listed on the EU Declaration of
Conformity issued by Hewlett-Packard for this product or product family.
This compliance is indicated by the following conformity marking placed on the
product:
yyyy+
This marking is valid for non-Telecom products
This marking is valid for EU non-harmonized
and EU harmonized Telecom products
Telecom products.
(e.g. Bluetooth).
*Notified body number (used only if
applicable - refer to the product label)
Hewlett-Packard GmbH, HQ-TRE, Herrenberger Strasse 140, 71034 Boeblingen,
Germany
Japanese Notice
この装置は、 情報処理装置等電波障害自主規制協議会 (VCCI) の基準に基づ く ク
ラス B 情報技術装置です。 この装置は、家庭環境で使用する こ と を目的と し てい
ますが、 この装置がラ ジオやテレビジ ョ ン受信機に近接し て使用される と、 受信
障害を引き起こすこ とがあ り ます。
取扱説明書に従って正しい取り扱いを し て く だ さい。
Disposal of Waste Equipment by Users in Private Household in
the European Union
This symbol on the product or on its packaging indicates that this
product must not be disposed of with your other household waste.
Instead, it is your responsibility to dispose of your waste equipment
by handing it over to a designated collection point for the recycling
of waste electrical and electronic equipment. The separate collection
and recycling of your waste equipment at the time of disposal will
help to conserve natural resources and ensure that it is recycled in a
manner that protects human health and the environment. For more information
about where you can drop off your waste equipment for recycling, please contact
your local city office, your household waste disposal service or the shop where you
purchased the product.
Perchlorate Material - special handling may apply
This calculator's Memory Backup battery may contain perchlorate and may require
special handling when recycled or disposed in California.
B
User Memory and the Stack
This appendix covers
ꢀ
ꢀ
ꢀ
ꢀ
The allocation and requirements of user memory,
How to reset the calculator without affecting memory,
How to clear (purge) all of user memory and reset the system defaults, and
Which operations affect stack lift.
Managing Calculator Memory
The HP 35s has 30KB of user memory available to you for any combination of
stored data (variables, equations, or program lines). SOLVE, ∫ FN, and statistical
calculations also require user memory. (The ∫ FN operation is particularly
"expensive" to run.)
All of your stored data is preserved until you explicitly clear it. The message
means that there is currently not enough memory available for the
operation you just attempted. You need to clear some (or all) of user memory. For
instance, you can:
ꢀ
Clear any or all equations (see "Editing and Clearing Equations" in chapter
6).
ꢀ
Clear any or all programs (see "Clearing One or More Programs" in chapter
13).
ꢀ
Clear all of user memory (press
()).
To see how much memory is available, press . The display shows the
number of bytes available.
B-1
To see the memory requirements of specific equations in the equation list:
1. Press to activate Equation mode. ( or the left end of the
current equation will be displayed.)
2. If necessary, scroll through the equation list (press ×or Ø) until you see
the desired equation.
3. Press to see the checksum (hexadecimal) and length (in bytes) of
the equation. For example, .
To see the total memory requirements of specific programs:
1. Press () to display the first label in the program list.
2. Scroll through the program list (press ×or Øuntil you see the desired
program label and size). For example, .
3. Optional: Press to see the checksum (hexadecimal) and length
(in bytes) of the program. For example, .
To see the memory requirements of an equation in a program:
1. Display the program line containing the equation.
2. Press to see the checksum and length. For example,
.
Resetting the Calculator
If the calculator doesn't respond to keystrokes or if it is otherwise behaving
unusually, attempt to reset it. Resetting the calculator halts the current calculation
and cancels program entry, digit entry, a running program, a SOLVE calculation, an
∫ FN calculation, a VIEW display, or an INPUT display. Stored data usually remain
intact.
To reset the calculator, hold down the key and press . If you are unable to
reset the calculator, try installing fresh batteries. If the calculator cannot be reset, or
if it still fails to operate properly, you should attempt to clear memory using the
special procedure described in the next section.
If the calculator still does not respond to keystrokes, use a thin, pointed object to
press the RESET hole.
The calculator can reset itself if it is dropped or if power is interrupted.
B-2
Clearing Memory
The usual way to clear user memory is to press
(). However,
there is also a more powerful clearing procedure that resets additional information
and is useful if the keyboard is not functioning properly.
If the calculator fails to respond to keystrokes, and you are unable to restore
operation by resetting it or changing the batteries, try the following MEMORY
CLEAR procedure. These keystrokes clear all of memory, reset the calculator, and
restore all format and modes to their original, default settings (shown below):
1. Press and hold down the key.
2. Press and hold down ¥.
3. Press 6. (You will be pressing three keys simultaneously). When you release
all three keys, the display shows if the operation is
successful.
B-3
Category
Angular mode
CLEAR ALL
Unchanged
MEMORY CLEAR
(Default)
Degrees
Base mode
Unchanged
Unchanged
Unchanged
Unchanged
Unchanged
Unchanged
Unchanged
Unchanged
Unchanged
Unchanged
EQN LIST TOP
Cleared
Decimal
Medium
““
“1,000”
4095
FIX 4
Cleared
xiy
Off
Zero
EQN LIST TOP
Cleared
Null
Contrast setting
Decimal point
Thousand separator
Denominator (/c value)
Display format
Flags
Complex mode
Fraction–display mode
Random–number seed
Equation pointer
Equation list
FN = label
Null
Program pointer
Program memory
Stack lift
Stack registers
Variables
PRGM TOP
Cleared
Enabled
Cleared to zero
Cleared to zero
Not defined
PRGM TOP
Cleared
Enabled
Cleared to zero
Cleared to zero
Not defined
Indirect Variables
Logic
Unchanged
RPN
Memory may inadvertently be cleared if the calculator is dropped or if power is
interrupted.
The Status of Stack Lift
The four stack registers are always present, and the stack always has a stack–lift
status. That is to say, the stack lift is always enabled or disabled regarding its
behavior when the next number is placed in the X–register. (Refer to chapter 2, "The
Automatic Memory Stack.")
All functions except those in the following two lists will enable stack lift.
B-4
Disabling Operations
The five operations , /, -,
() and
() disable stack lift. A number keyed in after one of these disabling
operations writes over the number currently in the X–register. The Y–, Z– and T–
registers remain unchanged.
In addition, when and act like CLx, they also disable stack lift.
The INPUT function disables stack lift as it halts a program for prompting (so any
number then entered writes over the X-register), but it enables stack lift when the
program resumes.
Neutral Operations
The following operations do not affect the status of stack lift:
DEG, RAD,
GRAD
PSE
FIX, SCI,
ENG, ALL
SHOW
DEC, HEX,
OCT, BIN
RADIX . RADIX , CLΣ
* and *
CLVARS
h and STOP ×and Ø
(1)**
EQN
(2)**
FDISP
label nnn
Errors
and program
entry
Switching binary Digit entry
windows
xiy rθ a
:
ꢀ Except when used like CLx.
ꢀꢀ Including all operations performed while the catalog is displayed except
{} and {} , which enable stack lift.
B-5
The Status of the LAST X Register
The following operations save x in the LAST X register in RPN mode:
x
x
+, –, × , ÷
e , 10
2
, x ,
x
x
y ,
X
LN, LOG
I/x, INT÷, Rmdr
y
SIN, COS, TAN
ASIN, ACOS, ATAN
ˆ
ˆ
SINH, COSH, TANH
ASINH, ACOSH, ATANH IP, FP, SGN, INTG,
RND, ABS
%, %CHG
Σ+, Σ–
HMSꢇ, ꢇHMS
!
RCL+, –, ×, ÷
ꢇDEG, ꢇRAD
ARG
nCr nPr
x
x
CMPLX +, –, × ,÷
CMPLX SIN, COS,
TAN
CMPLX e , LN, y , 1/x
ꢇkg, ꢇlb
ꢇ°C, ꢇ°F
ꢇcm, ꢇin
ꢇl, ꢇgal
ꢇKM ꢇMILE
Notice that /c does not affect the LAST X register.
The recall-arithmetic sequence Xh variable stores x in LASTx and
Xhvariable stores the recalled number in LASTx.
In ALG mode, the LAST X register is a companion to the stack: it holds the number
that is the result of last expression. It supports using the previous expression result in
ALG mode.
B-6
Accessing Stack Register Contents
The values held in the four stack registers, X, Y, Z and T, are accessible in RPN
mode in an equation or program using the REGX, REGY, REGZ and REGT
commands.
To use these instructions, press dfirst. Then, pressing <produces a menu in
the display showing the X–, Y–, Z–, T–registers. Pressing Õor Öwill move the
underline symbol, indicating which register is presently selected. Pressing
will place an instruction into a program or equation that recalls the value of the
chosen stack register for further use. These are displayed as REGX, REGY, REGZ,
and REGT.
For example, a program line entered by first pressing dand then entering the
instructions REGX x REGY x REGZ x REGT will compute the product of the values in
the 4 stack registers and place the result into the X-register. It will leave the previous
values of X, Y, and Z in the stack registers Y, Z, and T.
Many such efficient uses of values in the stack are possible in this manner that
would not otherwise be available on the HP35s.
B-7
C
ALG: Summary
About ALG
This appendix summarizes some features unique to ALG mode, including,
ꢀ
ꢀ
Two argument arithmetic
Exponential and Logarithmic functions (,,
,)
ꢀ
ꢀ
ꢀ
ꢀ
ꢀ
ꢀ
ꢀ
Trigonometric functions
Parts of numbers
Reviewing the stack
Operations with complex numbers
Integrating an equation
Arithmetic in bases 2, 8, and 16
Entering statistical two–variable data
Press 9() to set the calculator to ALG mode. When the calculator is
in ALG mode, the ALG annunciator is on.
In ALG mode, operations are performed in the following order.
1. Expression in parenthesis.
2. Factorial ( ! ) function requires inputting values before you press *.
3. Functions that require inputting values after pressing the function key, for
example, COS, SIN, TAN, ACOS, ASIN, ATAN, LOG, LN, x2, 1/x,
, π,
x
3
, %, RND, RAND, IP, FP, INTG, SGN, nPr, nCr, %CHG, INT÷, Rmdr, ABS,
x
x
x
e ,10 , unit conversion.
x y
x
4.
and y .
C-1
5. Unary Minus +/-
6. ×, ÷
7. +, –
8. =
Doing Two argument Arithmetic in ALG
This discussion of arithmetic using ALG replaces the following parts that are affected
by ALG mode. Two argument arithmetic operations are affected by ALG mode:
ꢀ
ꢀ
ꢀ
ꢀ
ꢀ
Simple arithmetic
Power functions (, )
Percentage calculations (or )
Permutations and Combinations ( x, {)
Quotient and Remainder of Division ((÷),
())
Simple Arithmetic
Here are some examples of simple arithmetic.
In ALG mode, you enter the first number, press the operator (, , , ),
enter the second number, and finally press the key.
To Calculate:
12 + 3
Press:
Display:
12 – 3
12 × 3
12 ÷ 3
C-2
Power Functions
In ALG mode, to calculate a number y raised to a power x, key in y x, then
press .
To Calculate:
Press:
Display:
3
12
1/3
Õ64
64
(cube root)
Percentage Calculations
The Percent Function. The key divides a number by 100.
To Calculate:
Press:
Õ2
7
Display:
27% of 200
Õ27
200 less 27%
25 plus 12%
Õ12
To Calculate:
Press:
x% of y
y Õx
Percentage change from y to x. (y≠ 0)
y Õx
Example:
Suppose that the $15.76 item cost $16.12 last year. What is the percentage
change from last year's price to this year's?
Keys:
Display:
Description:
This year's price dropped
about 2.2% from last year's
price.
Õ
C-3
Permutations and Combinations
Example: Combinations of People.
A company employing 14 women and 10 men is forming a six–person safety
committee. How many different combinations of people are possible?
Keys:
xÕ
Display:
Description:
Total number of
combinations possible.
Quotient and Remainder Of Division
You can use (÷) and () to produce
either the quotient or remainder of division operations involving two integers.
(÷)Integer ÕInteger .
1
2
()Integer ÕInteger .
1
2
Example:
To display the quotient and remainder produced by 58 ÷ 9
Keys:
Display:
Description:
Displays the quotient.
(÷)
Õ9
()
Õ9
Displays the remainder.
Parentheses Calculations
Use parentheses when you want to postpone calculating an intermediate result until
you entered more numbers. For example, suppose you want to calculate:
30
85−12
× 9
C-4
If you were to key in , the calculator would
calculate the result, -107.6471. However, that’s not what you want. To delay the
division until you’ve subtracted 12 from 85, use parentheses:
Keys:
Display:
Description:
No calculation is done.
4
Calculates 85 − 12.
Õ
_
Calculates 30/73.
_
Calculates 30/(85 − 12)
× 9.
You can omit the multiplication sign (×) before a left parenthesis. Implied
multiplication is not available in Equation mode. For example, the expression 2 × (5
– 4) can be entered as 4, without the key inserted between 2
and the left parenthesis.
Exponential and Logarithmic Functions
To Calculate:
Press:
Display:
Natural logarithm (base e)
Common logarithm (base 10)
Natural exponential
Common exponential
(antilogarithm)
C-5
Trigonometric Functions
Assume the unit of the angle is 9()
To Calculate:
Sine of x.
Press:
Display:
Cosine of x.
Tangent of x.
Arc sine of x.
Arc cosine of x.
Arc tangent of x.
Hyperbolic functions
To Calculate:
Press:
Hyperbolic sine of x (SINH).
,key in a number,
press
Hyperbolic cosine of x (COSH).
Hyperbolic tangent of x (TANH).
Hyperbolic arc sine of x (ASINH).
Hyperbolic arc cosine of x (ACOSH).
Hyperbolic arc tangent of x (ATANH).
, key in a
number,press
, key in a number,
press
, key in a
number,press
, key in a
number,press
, key in a
number,press
C-6
Parts of numbers
To calculate:
The integer part of 2.47
Press:
Display:
()
The fractional part of 2.47
()
The absolute value of –7
The sign value of 9
()
The greatest integer equal to
or less than –5.3
()
Reviewing the Stack
The or key produces a menu in the display— X–, Y–, Z–, T–registers,
to let you review the entire contents of the stack. The difference between the
and the key is the location of the underline in the display. Pressing the
displays the underline on the T register; pressing the displays the
underline on the Y register.
Pressing displays the following menu:
value
Pressing displays the following menu:
value
You can press and (along with Õ or Ö) to review the entire
contents of the stack and recall them. They will appear as , ,
or depending on which part of the stacked was recalled and may be
used in further calculations.
C-7
The value of X-, Y-, Z-, T-register in ALG mode is the same in RPN mode. After
normal calculation, solving, programming, or integrating, the value of the four
registers will be the same as in RPN or ALG mode and retained when you switch
between ALG and RPN logic modes.
Integrating an Equation
1. Key in an equation. (see "Entering Equations into the Equation List" in chapter
6) and leave Equation mode.
2. Enter the limits of integration: key in the lower limit and press , then key
in the upper limit.
3. Display the equation: Press and, if necessary, scroll through the
equation list (press ×or Ø) to display the desired equation.
4. Select the variable of integration: Press variable. This starts the
calculation.
Operations with Complex Numbers
To enter a complex number:
Form:
1. Type the real part.
2. Press6.
3. Type the imaginary part.
Form:
1. Type the real part.
2. Press.
3. Type the imaginary part.
4. Press 6.
Form:
1. Type the value of r.
2. Press?.
3. Type the value of θ .
C-8
To do an operation with one complex number:
1. Select the function.
2. Enter the complex number z.
3. Press to calculate.
4. The calculated result will be displayed in Line 2 and the displayed form will
be the one that you have set in 9.
To do an arithmetic operation with two complex numbers:
1. Enter the first complex number, z .
1
2. Select the arithmetic operation.
3. Enter the second complex number, z .
2
4. Press to calculate.
5. The calculated result will be displayed in Line 2 and the displayed form will
be the one that you have set in 9.
Here are some examples with complex numbers:
Examples:
Evaluate sin (2 + 3i )
Keys:
Display:
Description:
Sets display form
8 ( )
6
Result is
9.1545 i–4.1689
Examples:
Evaluate the expression
z
÷ (z + z ),
1
2
3
where z = 23 + 13 i, z = –2 + i z = 4 –3 i
1
2
3
C-9
Keys:
Display:
Description:
Sets display form
8Ë
( )
4
6
Õ4
66
Result is
2.5000 + 9.0000 i
Examples:
Evaluate (4 - 2/5 i) × (3 - 2/3 i)
Keys:
Display:
Description:
4
6Õ4
6
Result is
11.7333 i–3.8667
Arithmetic in Bases 2, 8, and 16
Here are some examples of arithmetic in Hexadecimal, Octal, and Binary modes:
Example:
12F + E9A
= ?
16
16
Keys:
Display:
Description:
Sets base 16; HEX
annunciator on.
()
C-10 ALG: Summary
Result.
F
()
E9A
()
7760 – 4326 =?
8
8
Sets base 8: OCT
annunciator on.
Converts displayed
number to octal.
()
()
()
100 ÷ 5 =?
8
8
()
Integer part of result.
()
5A0 + 10011000 =?
16
2
Set base 16; HEX
annunciator on.
()
A0
()
()
Result in hexadecimal
base.
Restores decimal base.
()
Entering Statistical Two–Variable Data
In ALG mode, remember to enter an (x, y) pair in reverse order (y x or y
x ) so that y ends up in the Y–register and X in the X–register.
1. Press
(4Σ) to clear existing statistical data.
2. Key in the y–value first and press .
3. Key in the corresponding x–value and press .
4. The display shows n the number of statistical data pairs you have
accumulated.
5. Continue entering x, y–pairs. n is updated with each entry.ꢀ
If you wish to delete the incorrect values that were just entered, press z 4.
After deleting the incorrect statistical data, the calculator will display the last
statistical data entered in line 1 (top line of the display) and value of n in line 2. If
there are no statistical data, the calculator will display n=0 in line 2.
Example:
After keying in the x, y–values on the left, make the corrections shown on the right:
Initial x, y
Corrected x, y
20, 4
400, 6
20, 5
40, 6
Keys:
Display:
Description:
Clears existing statistical data.
{
(4Σ)
Zꢁꢂ6
Enters the first new data pair.
ꢀꢁ Σ-
ꢂ)ꢁꢁꢁꢁ
ꢃꢁꢁ Σ-
ꢀ)ꢁꢁꢁꢁ
ꢄꢅ !º
Display shows n, the number of data
pairs you entered.
ꢃZ ꢂꢂ
6
Brings back last x–value. Last y is still
{
ꢃꢁꢁ)ꢁꢁꢁꢁ
in Y–register.
ꢃꢁꢁ Σ.
Deletes the last data pair.
Reenters the last data pair.
Deletes the first data pair.
z 4
ꢂ)ꢁꢁꢁꢁ
ꢃꢁ Σ-
ꢃZ ꢂ6
ꢀ)ꢁꢁꢁꢁ
ꢀꢁ Σ.
Zꢁꢂz
4
ꢂ)ꢁꢁꢁꢁ
Reenters the first data pair. There is
still a total of two data pairs in the
statistics registers.
ꢄZꢁꢂ6
ꢀꢁ Σ-
ꢀ)ꢁꢁꢁꢁ
C-12 ALG: Summary
Linear Regression
Linear regression, or L.R. (also called linear estimation), is a statistical method for
finding a straight line that best fits a set of x,y–data.
ꢀ
ꢀ
To find an estimated value for x (or y), key in a given hypothetical value for y
(or x) ,press , then press ( ˆ ) (or Õ( ˆ )).
To find the values that define the line that best fits your data, press
followed by (), (), or ().
D
More about Solving
This appendix provides information about the SOLVE operation beyond that given in
chapter 7.
How SOLVE Finds a Root
SOLVE first attempts to solve the equation directly for the unknown variable. If the
attempt fails, SOLVE changes to an iterative(repetitive) procedure. The iterative
operation is to execute repetitively the specified equation. The value returned by the
equation is a function f(x) of the unknown variable x. (f(x) is mathematical shorthand
for a function defined in terms of the unknown variable x.) SOLVE starts with an
estimate for the unknown variable, x, and refines that estimate with each successive
execution of the function, f(x).
If any two successive estimates of the function f(x) have opposite signs, then SOLVE
presumes that the function f(x) crosses the x–axis in at least one place between the
two estimates. This interval is systematically narrowed until a root is found.
For SOLVE to find a root, the root has to exist within the range of numbers of the
calculator, and the function must be mathematically defined where the iterative
search occurs. SOLVE always finds a root, provided one exists (within the overflow
bounds), if one or more of these conditions are met:
ꢀ
Two estimates yield f(x) values with opposite signs, and the function's graph
crosses the x–axis in at least one place between those estimates (figure a,
below).
ꢀ
ꢀ
f(x) always increases or always decreases as x increases (figure b, below).
The graph of f(x) is either concave everywhere or convex everywhere (figure
c, below).
D-1
ꢀ
If f(x) has one or more local minima or minima, each occurs singly between
adjacent roots of f(x) (figure d, below).
f (x)
f (x)
x
x
b
a
f (x)
f (x)
x
x
d
Function Whose Roots Can Be Found
In most situations, the calculated root is an accurate estimate of the theoretical,
c
infinitely precise root of the equation. An "ideal" solution is one for which f(x) = 0.
However, a very small non–zero value for f(x) is often acceptable because it might
result from approximating numbers with limited (12–digit) precision.
D-2
Interpreting Results
The SOLVE operation will produce a solution under either of the following
conditions:
ꢀ
ꢀ
If it finds an estimate for which f(x) equals zero. (See figure a, below.)
If it finds an estimate where f(x) is not equal to zero, but the calculated root is
a 12–digit number adjacent to the place where the function's graph crosses
the x–axis (see figure b, below). This occurs when the two final estimates are
neighbors (that is, they differ by 1 in the 12th digit), and the function's value
–
is positive for one estimate and negative for the other. Or they are (0, 10
499
–499
). In most cases, f(x) will be relatively close to zero.
) or (0, –10
To obtain additional information about the result, press see the previous
estimate of the root (x), which was left in the Y–register. Press again to see the
value of f(x), which was left in the Z–register. If f(x) equals zero or is relatively small,
it is very likely that a solution has been found. However, if f(x) is relatively large, you
must use caution in interpreting the results.
Example: An Equation With One Root.
Find the root of the equation:
3
2
–2x + 4x – 6x + 8 = 0
Enter the equation as an expression:
D-3
Keys:
Display:
Description:
Select Equation mode.
Enters the equation.
X
X
X
ꢆ
Checksum and length.
Cancels Equation mode.
Now, solve the equation to find the root:
Keys:
Display:
Description:
_
Initial guesses for the root.
X
Selects Equation mode; displays
the left end of the equation.
Solves for X; displays the result.
ꢆ
X
Final two estimates are the same
to four decimal places.
f(x) is very small, so the
approximation is a good root.
Example: An Equation with Two Roots.
Find the two roots of the parabolic equation:
2
x + x – 6 = 0.
Enter the equation as an expression:
D-4
Keys:
Display:
Description:
Selects Equation mode.
Enters the equation.
X
X
Checksum and length.
Cancels Equation mode.
Now, solve the equation to find its positive and negative roots:
Keys:
Display:
Description:
Your initial guesses for the positive
root.
X
_
Selects Equation mode; displays
the equation.
Calculates the positive root using
guesses 0 and 10.
X
Final two estimates are the same.
f(x) = 0.
Your initial guesses for the
negative root.
X
_
Redisplays the equation.
Calculates negative root using
guesses 0 and –10.
X
f(x) = 0.
Certain cases require special consideration:
ꢀ
If the function's graph has a discontinuity that crosses the x–axis, then the
SOLVE operation returns a value adjacent to the discontinuity (see figure a,
below). In this case, f(x) may be relatively large.
D-5
ꢀ
Values of f(x) may be approaching infinity at the location where the graph
changes sign (see figure b, below). This situation is called a pole. Since the
SOLVE operation determines that there is a sign change between two
neighboring values of x, it returns the possible root. However, the value for
f(x) will be relatively large. If the pole occurs at a value of x that is exactly
represented with 12 digits, then that value would cause the calculation to halt
with an error message.
f (x)
f (x)
x
x
a
b
Special Case: A Discontinuity and a Pole
Example: A Discontinuous Function.
Find the root of the equation:
IP(x) = 1.5
Enter the equation:
Keys:
Display:
Description:
Selects Equation mode.
Enter the equation.
()
XÕ
Checksum and length.
Cancels Equation mode.
D-6
Now, solve to find the root:
Keys:
Display:
Description:
Your initial guesses for the root.
X
_
Selects Equation mode; displays
the equation.
Finds a root with guesses 0 and 5.
X
Shows root, to 11 decimal places.
The previous estimate is slightly
bigger.
f(x) is relatively large.
Note the difference between the last two estimates, as well as the relatively large
value for f(x). The problem is that there is no value of x for which f(x) equals zero.
However, at x = 1.99999999999, there is a neighboring value of x that yields an
opposite sign for f(x).
Example:
Find the root of the equation
x
−1= 0
x2 − 6
As x approaches
, f(x) becomes a very large positive or negative number.
6
Enter the equation as an expression.
Keys: Display:
Description:
Selects Equation mode.
Enters the equation.
X4
X
Õ
D-7
Checksum and length.
Cancels Equation mode.
Now, solve to find the root.
Keys:
Display:
Description:
Your initial guesses for the root.
X
_
Selects Equation mode; displays
the equation.
No root found for f(x).
X
When SOLVE Cannot Find a Root
Sometimes SOLVE fails to find a root. The following conditions cause the message
:
ꢀ
The search terminates near a local minimum or maximum (see figure a,
below).
ꢀ
The search halts because SOLVE is working on a horizontal asymptote—an
area where f(x) is essentially constant for a wide range of x (see figure b,
below).
ꢀ
The search is concentrated in a local "flat" region of the function (see figure c,
below).
In these cases, the values in the stack will be same as the values before executing
SOLVE.
D-8
f (x)
f (x)
x
x
b
a
f (x)
x
c
Case Where No Root Is Found
Example: A Relative Minimum.
Calculate the root of this parabolic equation:
2
x – 6x + 13 = 0.
It has a minimum at x = 3.
Enter the equation as an expression:
Keys:
Display:
Description:
Selects Equation mode.
Enters the equation.
X
X
D-9
Checksum and length.
Cancels Equation mode.
Now, solve to find the root:
Keys:
Display:
Description:
Your initial guesses for the root.
X
_
Selects Equation mode; displays
the equation.
Search fails with guesses 0 and
X
10
Example: An Asymptote.
Find the root of the equation
1
10 − = 0
X
Enter the equation as an expression.
Keys: Display:
Description:
Selects Equation mode.
Enters the equation.
X
Checksum and length.
Cancels Equation mode.
Your positive guesses for the root.
X
_
Selects Equation mode; displays
the equation.
Solves for x using guesses 0.005
and 5.
X
Previous estimate is the same.
f (x) = 0
D-10 More about Solving
Watch what happens when you use negative values for guesses:
Keys:
Display:
Description:
Your negative guesses for the root.
X
Selects Equation mode; displays
the equation.
Solves for X; displays the result.
X
Example: Find the root of the equation.
[x ÷ (x + 0.3)] − 0.5 = 0
Enter the equation as an expression:
Keys: Display:
Description:
Selects Equation mode.
Enters the equation.
X4
X
ÕÕ
ꢆ
Checksum and length.
Cancels Equation mode.
First attempt to find a positive root:
Keys:
Display:
Description:
Your positive guesses for the
root.
X
_
Selects Equation mode;
displays the left end of the
equation.
ꢆ
Calculates the root using
X
guesses 0 and 10.
Now attempt to find a negative root by entering guesses 0 and –10. Notice that the
function is undefined for values of x between 0 and –0.3 since those values
produce a positive denominator but a negative numerator, causing a negative
square root.
Keys:
Display:
Description:
X
_
Selects Equation mode; displays
the left end of the equation.
No root found for f(x).
ꢆ
X
Example: A Local "Flat" Region.
Find the root of the function
f(x) = x + 2 if x < –1,
f(x) = 1 for –1 ≤ x ≤ 1 (a local flat region),
f(x) = –x + 2 if x >1.
In RPN mode, enter the function as the program:
ꢀ
Checksum and length: 9412 39
D-12 More about Solving
–8
–8
.
Solve for X using initial guesses of 10 and –10
Keys:
Display:
Description:
(In RPN mode)
Enters guesses.
X _
Selects program "J" as the function.
Solves for X; displays the result.
J
X
Round–Off Error
The limited (12–digit) precision of the calculator can cause errors due to rounding
off, which adversely affect the iterative solutions of SOLVE and integration. For
example,
[( x +1) +1015]2 -1030 = 0
has no roots because f(x) is always greater than zero. However, given initial guesses
of 1 and 2, SOLVE returns the answer 1.0000 due to round–off error.
Round–off error can also cause SOLVE to fail to find a root. The equation
x2 - 7 = 0
has a root at
. However, no 12–digit number exactly equals
, so the
7
7
calculator can never make the function equal to zero. Furthermore, the function
never changes sign SOLVE returns the message .
E
More about Integration
This appendix provides information about integration beyond that given in chapter
8.
How the Integral Is Evaluated
The algorithm used by the integration operation, ∫ , calculates the integral of
a function f(x) by computing a weighted average of the function's values at many
values of x (known as sample points) within the interval of integration. The accuracy
of the result of any such sampling process depends on the number of sample points
considered: generally, the more sample points, the greater the accuracy. If f(x) could
be evaluated at an infinite number of sample points, the algorithm could —
neglecting the limitation imposed by the inaccuracy in the calculated function f(x) —
always provide an exact answer.
Evaluating the function at an infinite number of sample points would take forever.
However, this is not necessary since the maximum accuracy of the calculated
integral is limited by the accuracy of the calculated function values. Using only a
finite number of sample points, the algorithm can calculate an integral that is as
accurate as is justified considering the inherent uncertainty in f(x).
The integration algorithm at first considers only a few sample points, yielding
relatively inaccurate approximations. If these approximations are not yet as accurate
as the accuracy of f(x) would permit, the algorithm is iterated (repeated) with a
larger number of sample points. These iterations continue, using about twice as
many sample points each time, until the resulting approximation is as accurate as is
justified considering the inherent uncertainty in f(x).
E-1
As explained in chapter 8, the uncertainty of the final approximation is a number
derived from the display format, which specifies the uncertainty for the function. At
the end of each iteration, the algorithm compares the approximation calculated
during that iteration with the approximations calculated during two previous
iterations. If the difference between any of these three approximations and the other
two is less than the uncertainty tolerable in the final approximation, the calculation
ends, leaving the current approximation in the X–register and its uncertainty in the
Y–register.
It is extremely unlikely that the errors in each of three successive approximations —
that is, the differences between the actual integral and the approximations — would
all be larger than the disparity among the approximations themselves.
Consequently, the error in the final approximation will be less than its uncertainty
(provided that f(x) does not vary rapidly). Although we can't know the error in the
final approximation, the error is extremely unlikely to exceed the displayed
uncertainty of the approximation. In other words, the uncertainty estimate in the Y–
register is an almost certain "upper bound" on the difference between the
approximation and the actual integral.
Conditions That Could Cause Incorrect Results
Although the integration algorithm in the HP 35s is one of the best available, in
certain situations it — like all other algorithms for numerical integration — might
give you an incorrect answer. The possibility of this occurring is extremely remote.
The algorithm has been designed to give accurate results with almost any smooth
function. Only for functions that exhibit extremely erratic behavior is there any
substantial risk of obtaining an inaccurate answer. Such functions rarely occur in
problems related to actual physical situations; when they do, they usually can be
recognized and dealt with in a straightforward manner.
Unfortunately, since all that the algorithm knows about f(x) are its values at the
sample points, it cannot distinguish between f(x) and any other function that agrees
with f(x) at all the sample points. This situation is depicted below, showing (over a
portion of the interval of integration) three functions whose graphs include the many
sample points in common.
E-2
f (x)
x
With this number of sample points, the algorithm will calculate the same
approximation for the integral of any of the functions shown. The actual integrals of
the functions shown with solid blue and black lines are about the same, so the
approximation will be fairly accurate if f(x) is one of these functions. However, the
actual integral of the function shown with a dashed line is quite different from those
of the others, so the current approximation will be rather inaccurate if f(x) is this
function.
The algorithm comes to know the general behavior of the function by sampling the
function at more and more points. If a fluctuation of the function in one region is not
unlike the behavior over the rest of the interval of integration, at some iteration the
algorithm will likely detect the fluctuation. When this happens, the number of
sample points is increased until successive iterations yield approximations that take
into account the presence of the most rapid, but characteristic, fluctuations.
For example, consider the approximation of
∞ xe−xdx.
∫
0
Since you're evaluating this integral numerically, you might think that you should
499
represent the upper limit of integration as 10 , which is virtually the largest
number you can key into the calculator.
E-3
–x
Try it and see what happens. Enter the function f(x) = xe .
Keys: Display:
Description:
Select equation mode.
Enter the equation.
X
X
End of the equation.
Checksum and length.
Cancels Equation mode.
Set the display format to SCI 3, specify the lower and upper limits of integration as
499
zero and 10 , than start the integration.
Keys:
Display:
Description:
Specifies accuracy level
and limits of integration.
8(2)
_
Selects Equation mode;
displays the equation.
Approximation of the
integral.
∫
X
The answer returned by the calculator is clearly incorrect, since the actual integral of
–x
f(x) = xe from zero to ∞ is exactly 1. But the problem is not that ∞ was
499
499
is
represented by 10 , since the actual integral of this function from zero to 10
very close to 1. The reason for the incorrect answer becomes apparent from the
graph of f(x) over the interval of integration.
E-4
f (x)
x
The graph is a spike very close to the origin. Because no sample point happened to
discover the spike, the algorithm assumed that f(x) was identically equal to zero
throughout the interval of integration. Even if you increased the number of sample
points by calculating the integral in SCI 11 or ALL format, none of the additional
sample points would discover the spike when this particular function is integrated
over this particular interval. (For better approaches to problems such as this, see the
next topic, "Conditions That Prolong Calculation Time.")
Fortunately, functions exhibiting such aberrations (a fluctuation that is
uncharacteristic of the behavior of the function elsewhere) are unusual enough that
you are unlikely to have to integrate one unknowingly. A function that could lead to
incorrect results can be identified in simple terms by how rapidly it and its low–order
derivatives vary across the interval of integration. Basically, the more rapid the
variation in the function or its derivatives, and the lower the order of such rapidly
varying derivatives, the less quickly will the calculation finish, and the less reliable
will be the resulting approximation.
E-5
Note that the rapidity of variation in the function (or its low–order derivatives) must
be determined with respect to the width of the interval of integration. With a given
number of sample points, a function f(x) that has three fluctuations can be better
characterized by its samples when these variations are spread out over most of the
interval of integration than if they are confined to only a small fraction of the
interval. (These two situations are shown in the following two illustrations.)
Considering the variations or fluctuation as a type of oscillation in the function, the
criterion of interest is the ratio of the period of the oscillations to the width of the
interval of integration: the larger this ratio, the more quickly the calculation will
finish, and the more reliable will be the resulting approximation.
f (x)
Calculated integral
of this function
will be accurate.
x
a
b
f (x)
Calculated integral
of this function
may be inaccurate.
x
a
b
E-6
In many cases you will be familiar enough with the function you want to integrate
that you will know whether the function has any quick wiggles relative to the interval
of integration. If you're not familiar with the function, and you suspect that it may
cause problems, you can quickly plot a few points by evaluating the function using
the equation or program you wrote for that purpose.
If, for any reason, after obtaining an approximation to an integral, you suspect its
validity, there's a simple procedure to verify it: subdivide the interval of integration
into two or more adjacent subintervals, integrate the function over each subinterval,
then add the resulting approximations. This causes the function to be sampled at a
brand new set of sample points, thereby more likely revealing any previously hidden
spikes. If the initial approximation was valid, it will equal the sum of the
approximations over the subintervals.
Conditions That Prolong Calculation Time
In the preceding example, the algorithm gave an incorrect answer because it never
detected the spike in the function. This happened because the variation in the
function was too quick relative to the width of the interval of integration. If the width
of the interval were smaller, you would get the correct answer; but it would take a
very long time if the interval were still too wide.
Consider an integral where the interval of integration is wide enough to require
excessive calculation time, but not so wide that it would be calculated incorrectly.
–x
Note that because f(x) = xe approaches zero very quickly as x approaches ∞, the
contribution to the integral of the function at large values of x is negligible.
Therefore, you can evaluate the integral by replacing ∞, the upper limit of
499
3
integration, by a number not so large as 10
— say 10 .
Rerun the previous integration problem with this new limit of integration:
Keys:
Display:
Description:
New upper limit.
_
Selects Equation mode; displays the
equation.
E-7
∫
Integral. (The calculation takes a
minute or two.)
X
Uncertainty of approximation.
This is the correct answer, but it took a very long time. To understand why, compare
3
the graph of the function between x = 0 and x = 10 , which looks about the same
as that shown in the previous example, with the graph of the function between x = 0
and x = 10:
f (x)
x
0
10
You can see that this function is "interesting" only at small values of x. At greater
values of x, the function is not interesting, since it decreases smoothly and gradually
in a predictable manner.
The algorithm samples the function with higher densities of sample points until the
disparity between successive approximations becomes sufficiently small. For a
narrow interval in an area where the function is interesting, it takes less time to
reach this critical density.
To achieve the same density of sample points, the total number of sample points
required over the larger interval is much greater than the number required over the
smaller interval. Consequently, several more iterations are required over the larger
interval to achieve an approximation with the same accuracy, and therefore
calculating the integral requires considerably more time.
E-8
Because the calculation time depends on how soon a certain density of sample
points is achieved in the region where the function is interesting, the calculation of
the integral of any function will be prolonged if the interval of integration includes
mostly regions where the function is not interesting. Fortunately, if you must calculate
such an integral, you can modify the problem so that the calculation time is
considerably reduced. Two such techniques are subdividing the interval of
integration and transformation of variables. These methods enable you to change
the function or the limits of integration so that the integrand is better behaved over
the interval(s) of integration.
E-9
F
Messages
The calculator responds to certain conditions or keystrokes by displaying a
message. The symbol comes on to call your attention to the message. For
significant conditions, the message remains until you clear it. Pressing or
clears the message and the previous display content will be shown. Pressing any
other key clears the message but the function of the key will not be executed.
∫
A running program attempted to select a program label
(label) while an integration calculation was running.
∫ ∫
A running program attempted to integrate a program
(∫ variable) while another integration calculation
was running.
∫
A running program attempted to solve a program while
an integration calculation was running.
The catalog of variables ( () )
indicates no values stored.
You set a wrong guess number (like a complex number
or vector) when SOLVING equation for a variable.
The calculator is executing a function that might take a
while.
Allow you to verify clearing everything in memory.
Allows you to verily clearing the equation you are
editing. (Occurs only in Equation–entry mode.)
Allows you to verify clearing all programs in memory.
(Occurs only in Program–entry mode.)
Attempted to divide by zero. (Includes if Y–
register contains zero.)
Attempted to enter a program label that already exists
for another program routine.
F-1
Indicates the "top" of equation memory. The memory
scheme is circular, so is also the
"equation" after the last equation in equation memory.
The calculator is calculating the integral of an equation
or program. This might take a while.
A running CALCULATE,SOLVE or ∫ FN operation was
interrupted by pressing or in ALG, RPN, EQN,
or PGM mode.
Data error:
ꢀ
ꢀ
Attempted to save or calculate error data.
Attempted to calculate combinations or permutations
16
with r >n, with non–integer r or n, or with n ≥10
.
ꢀ
ꢀ
Attempted to save a complex number or vector in
the statistical data.
Attempted to save a base-n number that contains
digits greater than the largest base-n number digit
allowed.
ꢀ
Attempted to save an invalid data in the statistical
register using operation.
ꢀ
ꢀ
Attempt to compare complex numbers or vectors.
Attempted to use a trigonometric or hyperbolic
function with an illegal argument:
°
ꢀ with x an odd multiple of 90 .
ꢀ or with x < –1 or x > 1.
ꢀ with x ≤ –1; or x ≥ 1.
ꢀ with x < 1.
Attempted to enter an invalid variable name when
solving an equation.
Attempted a factorial or gamma operation with x as a
negative integer.
F-2
Exponentiation error:
th
Attempted to raise 0 to the 0 power or to a
ꢀ
ꢀ
ꢀ
negative power.
Attempted to raise a negative number to a non–
integer power.
Attempted to raise complex number (0 + i 0) to a
number with a negative real part.
Attempted an operation with an invalid indirect value ((I)
is not defined).
Attempted an operation with an invalid indirect value ((J)
is not defined).
Attempted to take a logarithm of zero or (0 + i0).
Attempted to take a logarithm of a negative number.
All of user memory has been erased (see page ).
The calculator has insufficient memory available to do
the operation (See appendix B).
The condition checked by a test instruction is not true.
(Occurs only when executed from the keyboard.)
Attempted to refer to a nonexistent program label (or line
number) with ,, or . Note that the error
can mean
ꢀ
you explicitly (from the keyboard) called a program
label that does not exist; or
ꢀ
the program that you called referred to another
label, which does not exist.
The result of integration does not exist.
The catalog of programs ( () )
indicates no program labels stored.
No solution could be found for this system of linear
equations.
Multiple solutions have been found for this system of
linear equations.
F-3
SOLVE (include EQN and PGM mode)cannot find the
root of the equation using the current initial guesses (see
page ). These conditions include: bad guess, solution
not found, point of interest, left unequal to right. A
SOLVE operation executed in a program does not
produce this error; the same condition causes it instead
to skip the next program line (the line following the
instruction variable).
Warning (displayed momentarily); the magnitude of a
result is too large for the calculator to handle. The
calculator returns 9.99999999999E499 in the current
display format. (See "Range of Numbers and Overflow"
on page .) This condition sets flag 6. If flag 5 is set,
overflow has the added effect of halting a running
program and leaving the message in the display until
you press a key.
Indicates the "top" of program memory. The memory
scheme is circular, so is also the "line" after
the last line in program memory.
The calculator is running an equation or program (other
than a SOLVE or ∫FN routine).
Attempted to execute variable or ∫ d variable
without a selected program label. This can happen the
first time that you use SOLVE or ∫ FN after the message
, or it can happen if the current label
no longer exists.
∫
A running program attempted to select a program label
(label) while a SOLVE operation was running.
A running program attempted to solve a program while
a SOLVE operation was running.
A running program attempted to integrate a program
while a SOLVE operation was running.
The calculator is solving an equation or program for its
root. This might take a while.
Attempted to calculate the square root of a negative
number.
F-4
Statistics error:
ꢀ
Attempted to do a statistics calculation with n = 0.
ˆ
y
ꢀ
Attempted to calculate s s ,
= 1.
,
, m, r, or b with n
ˆ
x
x y
ꢀ
ꢀ
Attempted to calculate r,
or
with x–data only
ˆ
xw
x
(all y–values equal to zero).
ˆ
y
Attempted to calculate
values equal.
,
, r, m, or b with all x–
ˆ
x
A syntax error was detected during evaluation of an
expression, equation,, or ". Pressing or
clears the error message and allows you to correct
the error.
The magnitude of the number is too large to be
converted to HEX, OCT, or BIN base; the number must
be in the range
–34,359,738,368 ≤ n ≤34,359,738,367.
st
A running program attempted an 21 nested label.
(Up to 20 subroutines can be nested.) Since SOLVE and
∫ FN each uses a level, they can also generate this error.
The condition checked by a test instruction is true.
(Occurs only when executed from the keyboard.)
Self–Test Messages:
The self–test and the keyboard test passed.
The self–test or the keyboard test failed, and the
calculator requires service.
n
© Copyright message displayed after successfully
completing the self–test.
F-5
G
Operation Index
This section is a quick reference for all functions and operations and their formulas,
where appropriate. The listing is in alphabetical order by the function's name. This
name is the one used in program lines. For example, the function named FIX n is
executed as 8 (1) n.
Nonprogrammable functions have their names in key boxes. For example, .
Non–letter and Greek characters are alphabetized before all the letters; function
names preceded by arrows (for example, ꢇDEG) are alphabetized as if the arrow
were not there.
The last column, marked ꢀ, refers to notes at the end of the table.
ꢀ
Name
Keys and Description
Page
1–15
1
+/–
Changes the sign of a number.
Addition. Returns y + x.
1–19
1–19
1–19
1–19
6–16
1
1
1
1
1
+
Subtraction. Returns y – x.
Multiplication. Returns y × x.
Division. Returns y ÷ x.
–
×
÷
Power. Indicates an exponent.
^
Deletes the last digit keyed in; clears
x; clears a menu; erases last function
keyed in an equation; deletes an
equation; deletes a program step.
1–4
1–8
6–3
13–7
1–28
6–3
13–11
13–20
Displays previous entry in catalog;
moves to previous equation in
equation list; moves program pointer
to previous step.
×
ꢀ
Name
Keys and Description
Page
Displays next entry in catalog; moves
to next equation in equation list;
moves program pointer to next line
(during program entry); executes the
current program line (not during
program entry).
1–28
6–3
13–11
13–20
Ø
Moves the cursor and does not
delete any content.
1–14
ÖorÕ
Scrolls the display to show more
digits to the left and right; displays
the rest of an equation or binary
number; goes the next menu page in
the CONST and SUMS menus.
1–11
6–4
11–8
Öor Õ
Goes to the top line of the equation
or the first line of the last label in
program mode.
Goes to the last line of the equation
or the first line of the next label in
program mode.
6–3
6–3
6–5
×
Ø
,
1
ꢀSeparates the two or three
arguments of a function.
1/x
1–18
4–2
1
1
Reciprocal.
x
10
Common exponential.
Returns 10 raised to the × power.
%
4–6
4–6
1
1
1
Percent.
Returns (y × x) ÷ 100.
%CHG
π
Percent change.
Returns (x – y)(100 ÷ y).
4–3
Returns the approximation
3.14159265359 (12 digits).
Σ+
Σ–
12–2
12–2
12–11
Accumulates (y, x) into statistics
registers.
Removes (y, x) from
statistics registers.
Σx
1
Õ()
Returns the sum of x–values.
G-2
ꢀ
Name
Keys and Description
Page
2
Σx
12–11
1
ÕÕÕ( )
Returns the sum of squares of x–
values.
Σxy
12–11
1
ÕÕÕÕÕ
()
Returns the sum of products of x–and
y–values.
Σy
12–11
12–11
1
1
ÕÕ()
Returns the sum of y–values.
2
ÕÕÕÕ( )
Returns the sum of squares of y–
values.
Σy
σx
12–7
12–7
1
1
ÕÕ(σ)
Returns population standard
deviation of x–values:
(x − x)2 ÷ n
∑
i
σy
ÕÕÕ(σ)
Returns population standard
deviation of y–values:
(y − y)2 ÷ n
∑
i
∫ FN d variable
8–2
15–7
( ∫ _) variable
Integrates the displayed equation or
the program selected by FN=, using
lower limit of the variable of
integration in the Y–register and
upper limit of the variable of
integration in the X–register.
( )
6–6
1
4parenthesis. press Õto leave
the parenthesis for further
calculation.
[ ]
10–1
9–1
1
1
3: A vector symbol for
performing vector operations
θ
?: A complex number symbol
for performing complex number
operations
ꢀ
Name
A through Z
Keys and Description
Page
6–4
1
variable Value of named
variable.
ABS
4–17
1
Absolute value.
Returns
.
x
ACOS
4–4
4–6
1
1
Arc cosine.
Returns cos x.
–1
ACOSH
Hyperbolic arc cosine.
–1
Returns cosh
x.
Activates Algebraic mode.
1–9
9()
ALOG
6–16
1
Common exponential.
Returns 10 raised to the specified
power (antilogarithm).
ALL
1–23
8()
Displays all significant digits. May
have to scroll right
(Õ) to see all of the digits.
AND
ARG
11–4
4–17
1
1
>(1AND)
Logic operator
=
Replaces a complex number with its
Argument ”θ”
ASIN
4–4
4–6
1
1
Arc sine
–1
Returns sin
x.
ASINH
Hyperbolic arc sine.
–1
Returns sinh
x.
ATAN
4–4
4–6
1
1
Arc tangent.
–1
Returns tan
x.
ATANH
Hyperbolic arc tangent.
–1
Returns tanh
x.
b
12–11
1
ÕÕÕÕ()
Returns the y–intercept of the
x
regression line:
– m
.
y
G-4
ꢀ
Name
Keys and Description
()
Page
b
11–2
1
Indicates a binary number
Displays the base–conversion menu.
11–1
11–1
BIN
()
Selects Binary (base 2) mode.
Turns on calculator; clears x; clears
messages and prompts; cancels
menus; cancels catalogs; cancels
equation entry; cancels program
entry; halts execution of an equation;
halts a running program.
1–1
1–4
1–8
1–29
6–3
13–7
13–19
/c
5–4
Denominator.
Sets denominator limit for displayed
fractions to x. If x = 1, displays
current /c value.
4–14
1
Converts ° F to ° C.
ꢇ°C
CF n
14–12
() n
Clears flag n (n = 0 through 11).
Displays menu to clear numbers or
parts of memory; clears indicated
variable or program from a MEM
catalog; clears displayed equation;
1–5
1–28
Clears all stored data, equations,
and programs.
1–29
13–23
13–7
12–1
3–6
()
Clears all programs (calculator in
Program mode).
()
Clears the displayed equation
(calculator in Equation mode).
()
CLΣ
(4)
Clears statistics registers.
CLVARS
CLx
()
Clears all variables to zero.
2–3
2–7
13–7
()
Clears x (the X–register) to zero.
ꢀ
Name
Keys and Description
Page
CLVARx
CLSTK
1–4
()
Clears indirect variables whose
address is greater than the x address
to zero.
2–7
()
Clears all stack levels to zero.
4–14
4–15
1
1
Converts inches to
centimeters.
ꢇCM
nCr
xCombinations of n items
taken r at a time.
Returns n! ÷ (r! (n – r)!).
COS
4–3
4–6
1
1
Cosine.
Returns cos x.
COSH
Hyperbolic
cosine. Returns cosh x.
Accesses the 41 physics constants.
4–8
d
11–1
1
()
indicates a decimal number
DEC
DEG
11–1
4–4
()
Selects Decimal mode.
9 ()
Selects Degrees angular mode.
4–13
1–21
1
Radians to degrees.
Returns (360/2π) x.
ꢇDEG
Displays menu to set the display
format, radix ( or ), thousand
separator, and display format of
complex number.
8
DSE variable
14–18
1–15
variable
Decrement, Skip if Equal or less. For
control number ccccccc.fffii stored in
a variable, subtracts ii (increment
value) from ccccccc (counter value)
and, if the result ≤fff (final value),
skips the next program line.
Begins entry of exponents and adds
"E" to the number being entered.
Indicates that a power of 10 follows.
1
G-6
ꢀ
Name
Keys and Description
Page
ENG n
1–22
8()n
Selects Engineering display with n
digits following the first digit (n = 0
through 11).
Causes the exponent display for the
number being displayed to change
in multiple of 3.
1–22
@and2
Separates two numbers keyed in
sequentially; completes equation
entry; evaluates the displayed
equation (and stores result if
appropriate).
1–19
6–4
6–11
ENTER
2–6
Copies x into the Y–register, lifts y
into the Z–register, lifts z into the T–
register, and loses t.
Activates or cancels (toggles)
Equation–entry mode.
6–3
13–7
x
4–1
1
1
e
Natural exponential.
Returns e raised to the x power.
EXP
6–16
Natural exponential.
Returns e raised to the specified
power.
4–14
5–1
1
Converts °C to °F.
ꢇ°F
Turns on and off Fraction–display
mode.
FIX n
1–21
8 () n
Selects Fixed display with n decimal
places: 0 ≤ n ≤ 11.
Displays the menu to set, clear, and
test flags.
14–12
FN = label
15–1
15–7
label
Selects labeled program as the
current function (used by SOLVE and
∫ FN).
FP
4–17
1
() Fractional part
of x.
ꢀ
Name
Keys and Description
Page
FS? n
14–12
() n
If flag n (n = 0 through 11) is set,
executes the next program line; if
flag n is clear, skips the next
program line.
4–14
4–4
1
Converts liters to gallons.
ꢇGAL
GRAD
9 ()Sets Grads
angular mode.
Sets program pointer to line nnn of
program label.
13–21
label nnn
Sets program pointer to PRGM TOP.
13–21
11–1
h
1
()
Indicates a hexadecimal number
HEX
11–1
()
Selects Hexadecimal (base 16)
mode.
Displays the HYP_ prefix for
hyperbolic functions.
4–6
4–13
1
1
ꢇHMS
Hours to hours, minutes, seconds.
Converts x from a decimal fraction to
hours–minutes–seconds format.
4–13
9–2
5
HMSꢇ
Hours, minutes, seconds to hours.
Converts x from hours–minutes–
seconds format to a decimal fraction.
Used for entering complex numbers
1
1
6
(I)/(J)
6–4
14–21
7 /A,7
/A.
Value of variable whose letter
corresponds to the numeric value
stored in variable I/J.
4–14
6–16
1
1
Converts centimeters to
inches.
ꢇIN
IDIV
(÷) Produces
the quotient of a division operation
involving two integers.
G-8
ꢀ
Name
Keys and Description
Page
INT÷
INTG
4–2
1
(÷) Produces
the quotient of a division operation
involving two integers.
4–18
1
() Obtains the
greatest integer equal to or less than
given number.
INPUT variable
13–13
variable
Recalls the variable to the X–register,
displays the variable's name and
value, and halts program execution.
Pressing (to resume program
execution) or Ø(to execute the
current program line) stores your
input in the variable. (Used only in
programs.)
INV
IP
6–16
4–17
1
1
Reciprocal of argument.
() Integer part of
x.
ISG variable
14–18
variable
Increment, Skip if Greater.
For control number ccccccc.fffii
stored in variable, adds ii (increment
value) to ccccccc (counter value)
and, if the result > fff (final value),
skips the next program line.
4–14
4–14
1
1
1
Converts pounds to
kilograms.
ꢇKG
<Converts miles to.
kilometers
ꢇKM
4–14
2–8
Converts gallons to liters.
ꢇL
LASTx
Returns number stored in the LAST X
register.
4–14
1
Converts kilograms to pounds.
ꢇLB
ꢀ
Name
LBL label
Keys and Description
label
Page
13–3
Labels a program with a single letter
for reference by the XEQ, GTO, or
FN= operations. (Used only in
programs.)
LN
4–1
4–1
1
1
Natural logarithm.
Returns log x.
e
LOG
Common logarithm.
Returns log x.
10
Displays menu for linear regression.
12–4
12–7
m
1
1
ÕÕÕ()
Returns the slope of the regression
2
line: [Σ(x – )(y – )]÷Σ(x –
)
y
x
x
i
j
i
4–14
;Converts kilometers to
miles.
ꢇMILE
Displays the amount of available
memory and the catalog menu.
1–28
Begins catalog of programs.
13–22
(2)
Begins catalog of variables.
3–4
(1)
Displays menu to set ALG or RPN
mode or angular modes.
1–7
4–4
9
n
12–11
1
()
Returns the number of sets of data
points.
NAND
NOR
NOT
o
11–4
11–4
11–4
11–2
11–1
1
1
1
1
> ()
Logic operator
> ()
Logic operator
> ()
Logic operator
()
Indicates an octal number
OCT
()
Selects Octal (base 8) mode.
G-10 Operation Index
ꢀ
Name
Keys and Description
> ()
Page
OR
11–4
1
Logic operator
Turns the calculator off.
1–1
nPr
4–15
1
{Permutations of n items
taken r at a time. Returns n!÷(n – r)!.
Activates or cancels (toggles)
Program–entry mode.
13–6
PSE
13–18
13–19
Pause.
Halts program execution briefly to
display x, variable, or equation, then
resumes. (Used only in programs.)
r
12–7
1
ÕÕ() Returns the
correlation coefficient between the x–
and y–values:
(x − x)(y − y)
∑
i
i
(x − x)2 ×(y − y)2
∑
i
i
1–25
rθ a
8 ()
Changes the display of complex
numbers.
RAD
4–4
4–13
1–23
9 ()
Selects Radians angular mode.
1
1
Degrees to radians.
Returns (2π/360) x.
ꢇRAD
RADIX ,
8 (6)
Selects the comma as the radix mark
(decimal point).
RADIX .
1–23
4–15
3–7
8 ()
Selects the period as the radix mark
(decimal point).
RANDOM
RCL variable
Executes the RANDOM
function. Returns a random number
in the range 0 through 1.
variable
Recall.
Copies variable into the X–register.
ꢀ
Name
Keys and Description
variable
Page
RCL+ variable
3–7
Returns x + variable.
RCL– variable
RCLx variable
RCL÷ variable
RMDR
3–7
3–7
variable.
Returns x – variable.
variable.
Returns x × variable.
3–7
variable.
Returns x ÷ variable.
6–16
1
1
() Produces
the remainder of a division operation
involving two integers.
RND
4–18
5–8
Round.
Rounds x to n decimal places in FIX n
display mode; to n + 1 significant
digits in SCI n or ENG n display
mode; or to decimal number closest
to displayed fraction in Fraction–
display mode.
1–9
9()Activates Reverse
Polish notation.
RTN
13–4
14–1
Return.
Marks the end of a program; the
program pointer returns to the top or
to the calling routine.
Rꢀ
2–3
C–7
Roll down.
Moves t to the Z–register, z to the Y–
register, y to the X–register, and x to
the T–register in RPN mode.
Displays the X,Y,Z,T menu to review
the stack in ALG mode.
Rꢁ
2–3
C–7
Roll up.
Moves t to the X–register, z to the T–
register, y to the Z–register, and x to
the Y–register in RPN mode.
Displays the X,Y,Z,T menu to review
the stack in ALG mode.
Displays the standard–deviation
Menu.
12–4
G-12 Operation Index
ꢀ
Name
Keys and Description
Page
SCI n
SEED
1–22
8() n
Selects Scientific display with n
decimal places. (n = 0 through 11.)
4–15
. Restarts the random–
x
number sequence with the seed
.
SF n
14–12
4–17
() n
Sets flag n (n = 0 through 11).
SGN
1
() Indicates the
sign of x.
Shows the full mantissa (all 12 digits)
of x (or the number in the current
program line); displays hex
6–19
13–23
checksum and decimal byte length
for equations and programs.
SIN
4–3
4–6
1
1
Sine.
Returns sin x.
SINH
Hyperbolic sine.
Returns sinh x.
7–1
15–1
SOLVE variable
variable
Solves the displayed equation or the
program selected by FN=, using
initial estimates in variable and x.
Inserts a blank space character
during equation entry.
14–14
1
SQ
6–16
6–16
3–2
1
1
Square of argument.
SQRT
Square root of x.
STO variable
variable
Store. Copies x into variable.
STO + variable
STO – variable
STO × variable
STO ÷ variable
3–6
3–6
3–6
3–6
variable
Stores variable + x into variable.
variable
Stores variable – x into variable.
variable
Stores variable × x into variable.
variable
Stores variable ÷ x into variable.
ꢀ
Name
Keys and Description
Run/stop.
Page
STOP
13–19
Begins program execution at the
current program line; stops a running
program and displays the X–register.
Displays the summation menu.
12–4
12–6
sx
1
1
()
Returns sample standard deviation of
x–values:
(x − x)2 ÷ (n −1)
∑
i
sy
12–6
Õ()
Returns sample standard deviation of
y–values:
(y − y)2 ÷ (n −1)
∑
i
TAN
4–3
4–6
1
1
Tangent. Returns tan x.
TANH
Hyperbolic
tangent.
Returns tanh x.
VIEW variable
3–4
13–15
variable
Displays the labeled contents of
variable without recalling the value
to the stack.
Evaluates the displayed equation.
6–12
14–1
XEQ label
label
Executes the program identified by
label.
2
x
4–2
4–2
1
1
Square of x.
Square root of x.
x
th
4–2
1
1
The x root of y.
X
y
12–4
(
)
x
Returns the mean of x values:
Σ x ÷ n.
i
G-14 Operation Index
ꢀ
Name
Keys and Description
(
Given a y–value in the X–register,
returns the x–estimate based on the
Page
12–11
1
)
ˆ
x
ˆ
regression line:
= (y – b) ÷ m.
ˆ
x
!
4–15
1
*Factorial (or gamma).
Returns (x)(x – 1) ... (2)(1), or Γ (x +
1).
XROOT
6–16
12–4
1
1
The argument root of
1
argument .
2
ÕÕ( w )Returns
w
x
weighted mean of x values: (Σyx ) ÷
i i
Σy.
i
Displays the mean (arithmetic
average) menu.
12–4
3–8
x<> variable
x exchange.
Exchanges x with a variable.
x<>y
2–4
x exchange y.
Moves x to the Y–register and y to
the X–register.
Displays the "x?y" comparison tests
14–7
14–7
menu.
x≠y
(≠)
If x≠y, executes next program line;
if x=y, skips next program line.
x≤y?
x<y?
x>y?
x≥y?
14–7
14–7
14–7
14–7
Õ(≤)
If x≤y, executes next program line;
if x>y, skips next program line.
ÕÕ(<)
If x<y, executes next program line;
if x≥y, skips next program line.
ÕÕÕ (>)
If x>y, executes next program line;
if x≤y, skips next program line.
ÕÕÕÕ(≥)
If x≥y, executes next program line;
if x<y, skips next program line.
ꢀ
Name
Keys and Description
Page
x=y?
14–7
ÕÕÕÕÕ()
If x=y, executes next program line;
if x≠y, skips next program line.
Displays the "x?0" comparison tests
14–7
14–7
menu.
x≠0?
(≠)
If x≠0, executes next program line;
if x=0, skips the next program line.
x≤0?
x<0?
x>0?
x≥0?
x=0?
14–7
14–7
14–7
14–7
14–7
Õ(≤)
If x≤0, executes next program line;
if x>0, skips next program line.
ÕÕ(<)
If x<0, executes next program line;
if x≥0, skips next program line.
ÕÕÕ(>)
If x>0, executes next program line;
if x≤0, skips next program line.
ÕÕÕÕ(≥)
If x≥0, executes next program line;
if x<0, skips next program line.
ÕÕÕÕÕ(=)
If x=0, executes next program line;
if x≠0, skips next program line:
XOR
xiy
11–4
4–11
1
>()
Logic operator
8( )
Changes display of complex
numbers.
x+yi
1–25
12–4
8( )
Changes display of complex
numbers. ALG mode only.
1
Õ( )
Returns the mean of y values.
Σy ÷ n.
i
y
G-16 Operation Index
ꢀ
Name
Keys and Description
Page
12–11
1
Õ( ˆ )
ˆ
y
Given an x–value in the X–register,
returns the y–estimate based on the
regression line:
= m x + b.
ˆ
y
x
4–2
1
y
Power.
Returns y raised to the x power.
th
Notes:
1. Function can be used in equations.
Index
flags 14-12
Special Characters
list of 1-13
∫ FN. See integration
% functions 4-6
low-power 1-1, A-3
shift keys 1-2
1-15
in fractions 1-26
π 4-3, A-2
ꢄ ꢅ annunciator
in fractions 5-2
in fractions 5-3
ꢆ annunciators
equations 6-7
binary numbers 11-8
equations 13-7
. See backspace key
_. See digit-entry cursor
. See integration
annunciators 1-3
annunciator 1-1, A-3
answers to questions A-1
arithmetic
binary 11-4
general procedure 1-18
hexadecimal 11-4
intermediate results 2-12
long calculations 2-12
octal 11-4
order of calculation 2-14
stack operation 2-5, 9-2
assignment equations 6-9, 6-11, 6-12,
7-1
B
backspace key
canceling VIEW 3-4
clearing messages 1-4
clearing X-register 2-3, 2-7
deleting program lines 13-20
equation entry 1-4
leaving menus 1-4, 1-8
operation 1-4
A
A…Z annunciator 1-3, 3-2, 6-4
absolute value (real number) 4-17
addressing
indirect 14-20, 14-21, 14-23
ALG 1-9
compared to equations 13-4
in programs 13-4
balance (finance) 17-1
base
Algebraic mode 1-9
ALL format. See display format
in equations 6-5
affects display 11-6
arithmetic 11-4
converting 11-2
default B-4
programs 11-8, 13-25
setting 11-1
in programs 13-7
setting 1-23
alpha characters 1-3
angles
base mode
between vectors 10-5
converting format 4-13
converting units 4-13
implied units 4-4, A-2
angular mode 4-4, A-2, B-4
annunciators
default B-4
equations 6-5, 6-11, 13-25
programming 13-25
setting 13-25
batteries 1-1, A-3
Bessel function 8-3
best-fit regression 12-7, 16-1, C-13
BIN annunciator 11-1
alpha 1-3
battery 1-1, A-3
binary numbers. See numbers
arithmetic 11-4
cash flows 17-1
catalogs
converting to 11-2
range of 11-7
scrolling 11-8
typing 11-1
leaving 1-4
program 1-28, 13-22
using 1-28
variable 1-28, 3-4
chain calculations 2-12
change-percentage functions 4-6
changing sign of numbers 1-15, 9-3
checksums
viewing all digits 11-8
borrower (finance) 17-1
branching 14-2, 14-16, 15-7
C
equations 6-19, 13-7, 13-24
programs 13-22
%CHG arguments 4-6, C-3
Å
CLEAR menu 1-5
adjusting contrast 1-1
canceling prompts 1-4
canceling VIEW 3-4
clearing messages 1-4
clearing X-register 2-3, 2-7
leaving catalogs 1-4
leaving menus 1-4, 1-8
on and off 1-1
clearing
equations 6-9
general information 1-4
memory 1-29, A-1
numbers 1-17
programs 1-29, 13-23
statistics registers 12-2
variables 1-28
operation 1-4
X-register 2-3, 2-7
/c value 5-4
clearing memory A-4, B-3
combinations 4-15
commas (in numbers) 1-23, A-1
comparison tests 14-7
complex numbers
leaving Equation mode 6-3
leaving Equation mode 6-4
canceling prompts 6-14
stopping SOLVE 7-8
stopping integration 8-2
leaving Program mode 13-7
leaving Program mode 13-7
canceling prompts 13-15
interrupting programs 13-19
stopping SOLVE 15-1
stopping integration 15-8
/c value B-4
argument value 4-17
coordinate systems 9-5
entering 9-1
on stack 9-2
operations 9-2
viewing 9-2
conditional tests 14-6, 14-7, 14-9, 14-
12, 14-17
/c value B-6
calculator
constant (filling stack) 2-7
Continuous Memory 1-1
contrast adjustment 1-1
conversion functions 4-10
conversions
adjusting contrast 1-1
default settings B-4
environmental limits A-2
questions about A-1
resetting A-4, B-2
angle format 4-13
angle units 4-13
self-test A-5
coordinates 4-10
shorting contacts A-5
testing operation A-4, A-5
turning on and off 1-1
length units 4-14
mass units 4-14
number bases 10-1, 11-1
temperature units 4-14
time format 4-13
volume units 4-14
backspacing 1-4
meaning 1-17
EQN annunciator
coordinates
in equation list 6-4, 6-7
in Program mode 13-7
EQN LIST TOP 6-7, F-2
equality equations 6-9, 6-11, 7-1
equation list
converting 4-10
correlation coefficient 12-8, 16-1
cosine (trig) 4-4, 9-3, C-6
curve fitting 12-8, 16-1
adding to 6-4
D
displaying 6-6
editing 6-8
EQN annunciator 6-4
in Equation mode 6-3
operation summary 6-3
Equation mode
Decimal mode. See base mode
decimal point A-1
degrees
angle units 4-4, A-2
converting to radians 4-14
denominators
backspacing 1-4, 6-8
during program entry 13-7
leaving 1-4, 6-3
shows equation list 6-3
starting 6-3, 6-7
controlling 5-4, 14-10, 14-14
range of 1-26, 5-2
setting maximum 5-4
discontinuities of functions D-5
display
adjusting contrast 1-1
X-register shown 2-3
display format
equations
and fractions 5-9
as applications 17-1
base mode 6-5, 6-11, 13-25
checksums 6-19, 13-7, 13-24
compared to ALG 13-4
compared to RPN 13-4
controlling evaluation 14-11
deleting 1-5, 6-9
affects integration 8-2, 8-6, 8-7
affects rounding 4-18
default B-4
periods and commas in 1-23, A-1
setting 1-21, A-1
do if true 14-6, 15-6
DSE 14-18
deleting in programs 13-20
displaying 6-6
displaying in programs 13-16, 13-
18, 14-11
editing 1-4, 6-8
editing in programs 13-7, 13-20
entering 6-4, 6-8
entering in programs 13-7
evaluating 6-10, 6-11, 6-12, 7-7,
13-4, 14-11
E
clearing stack 2-6
copying viewed variable 13-15
duplicating numbers 2-6
ending equations 6-4, 6-8, 13-7
evaluating equations 6-10, 6-11
separating numbers 1-17, 2-6
stack operation 2-6
functions 6-5, 6-16, G-1
in programs 13-4, 13-7, 13-24,
14-11
(exponent) 1-16
E in numbers 1-15, 1-22, A-1
ENG format 1-22 See also display
format
integrating 8-2
lengths 6-19, 13-7, B-2
list of. See equation list
long 6-7
entry cursor
memory in 13-16
multiple roots 7-9
clearing 14-12
default states 14-9
equation evaluation 14-11
equation prompting 14-11
fraction display 14-10
meanings 14-9
no root 7-8
numbers in 6-5
numeric value of 6-10, 6-11, 7-1,
7-7, 13-4
operation summary 6-3
parentheses 6-5, 6-6, 6-15
precedence of operators 6-14
prompt for values 6-11, 6-13
prompting in programs 14-11,
15-1, 15-8
operations 14-12
overflow 14-9
setting 14-12
testing 14-9, 14-12
unassigned 14-9
flow diagrams 14-2
FN=
roots 7-1
scrolling 6-7, 13-7, 13-16
solving 7-1, D-1
in programs 15-6, 15-10
integrating programs 15-8
solving programs 15-1
fractional-part function 4-17
Fraction-display mode
affects rounding 5-8
affects VIEW 13-15
setting 5-1, A-2
stack usage 6-11
storing variable value 6-12
syntax 6-14, 13-16
TVM equation 17-1
types of 6-9
uses 6-1
variables in 6-3, 7-1
with (I)/(J) 14-23
fractions
accuracy indicator 5-2, 5-3
and equations 5-9
and programs 5-10, 13-15, 14-9
denominators 1-26, 5-4, 14-10,
14-14
error messages F-1
errors
clearing 1-4
correcting 2-8, F-1
estimation (statistical) 12-8, 16-1
executing programs 13-10
exponential curve fitting 16-1
exponential functions 1-16, 4-1, 9-3,
C-5
exponents of ten 1-15, 1-16
expression equations 6-10, 6-11, 7-1
displaying 5-2, 5-4, A-2
flags 14-9
formats 5-6
not statistics registers 5-2
reducing 5-2, 5-6
rounding 5-8
round-off 5-8
setting format 5-6, 14-10, 14-14
typing 1-26
F
∫ FN. See integration
functions
in equations 6-5, 6-16
list of G-1
names in display 13-8
nonprogrammable 13-24
real-number 4-1
not programmable 5-10
toggles display mode 5-1, A-2
toggles flag 14-9
factorial function 4-15
financial calculations 17-1
FIX format 1-21 See also display format
flags
single argument 1-18, 2-9
two argument 1-19, 2-9, 9-3
future balance (finance) 17-1
annunciators 14-12
difficult functions E-2, E-7
display format 8-2, 8-6, 8-7
evaluating programs 15-7
how it works E-1
G
finds PRGM TOP 13-6, 13-21, 14-
6
in programs 15-10
finds program labels 13-10, 13-
22, 14-5
finds program lines 13-22, 14-5
gamma function 4-15
limits of 8-2, 15-8, C-8, E-7
memory usage 8-2
purpose 8-1
restrictions 15-11
results on stack 8-2, 8-6
stopping 8-2, 15-8
subintervals E-7
go to. See GTO
grads (angle units) 4-4, A-2
Grandma Hinkle 12-7
Greatest integer 4-18
grouped standard deviation 16-18
GTO 14-4, 14-17
time required 8-6, E-7
transforming variables E-9
uncertainty of result 8-2, 8-6, E-2
using 8-2, C-8
guesses (for SOLVE) 7-2, 7-7, 7-8, 7-
12, 15-6
H
help about calculator A-1
HEX annunciator 11-1
hex numbers. See numbers
arithmetic 11-4
variable of 8-2, C-8
intercept (curve-fit) 12-8, 16-1
interest (finance) 17-3
intermediate results 2-12
inverse function 9-3
inverse hyperbolic functions 4-6
inverse trigonometric functions 4-4, C-6
inverse-normal distribution 16-11
ISG 14-18
converting to 11-2
range of 11-7
typing 11-1
hexadecimal numbers. See hex
numbers
Horner's method 13-26
humidity limits for calculator A-2
hyperbolic functions 4-6, C-6
J
j 3-9, 14-20, 14-21
(j) 14-20
K
I
keys
i 3-9, 14-20
alpha 1-3
letters 1-3
shifted 1-3
(i) 14-20, 14-21, 14-23
imaginary part (complex numbers) 9-1,
C-8
indirect addressing 14-20, 14-21, 14-
23
L
LAST X register 2-8, B-6
LASTx function 2-8
INPUT
always prompts 14-11
entering program data 13-12
in integration programs 15-8
in SOLVE programs 15-2
responding to 13-14
integer-part function 4-17
integration
lender (finance) 17-1
length conversions 4-14
letter keys 1-3
limits of integration 8-2, 15-8, C-8
linear regression (estimation) 12-8, 16-
1
logarithmic curve fitting 16-1
accuracy 8-2, 8-6, E-1
logarithmic functions 4-1, 9-3, C-5
logic
usage B-1
MEMORY CLEAR A-4, B-3, F-3
MEMORY FULL B-1, F-3
menu keys 1-6
AND 11-4
NAND 11-4
NOR 11-4
menus
NOT 11-4
example of using 1-8
general operation 1-6
leaving 1-4, 1-8
OR 11-4
XOR 11-4
loop counter 14-18, 14-23
looping 14-16, 14-17
Łukasiewicz 2-1
list of 1-6
messages
clearing 1-4
displaying 13-16, 13-18
in equations 13-16
responding to 1-27, F-1
summary of F-1
M
program catalog 1-28, 13-22
reviews memory 1-28
variable catalog 1-28
mantissa 1-25
mass conversions 4-14
math
minimum of function D-8
modes. See angular mode, base mode,
Equation mode, Fraction-display
mode, Program-entry mode
MODES menu
angular mode 4-4
money (finance) 17-1
multiplication, dividision 10-2
complex-number 9-1
general procedure 1-18
intermediate results 2-12
long calculations 2-12
order of calculation 2-14
real-number 4-1
N
negative numbers 1-15, 9-3, 11-6
nested routines 14-2, 15-11
normal distribution 16-11
numbers. See binary numbers, hex
numbers, octal numbers, variables
bases 10-1, 13-25
stack operation 2-5, 9-2
maximum of function D-8
mean menu 12-4
means (statistics)
calculating 12-4
normal distribution 16-11
memory
changing sign of 1-15, 9-3
clearing 1-4, 1-5, 1-17
complex 9-1
amount available 1-28
clearing 1-5, 1-29, A-1, A-4, B-1,
B-3
clearing equations 6-9
clearing programs 1-28, 13-6, 13-
22
clearing statistics registers 12-2
clearing variables 1-28
full A-1
display format 1-21, 11-6
E in 1-15, A-1
editing 1-4, 1-17
exchanging 2-4
finding parts of 4-17
fractions in 1-26, 5-1
in equations 6-5
in programs 13-7
maintained while off 1-1
programs 13-21, B-2
size 1-28, B-1
internal representation 11-6
large and small 1-15, 1-17
negative 1-15, 9-3, 11-6
performing arithmetic calculations
stack 2-1
1-18
power curve fitting 16-1
power functions 1-17, 4-2, 9-3
precedence (equation operators) 6-14
precision (numbers) 1-25, D-13
present value. See financial
calculations
periods and commas in 1-23, A-1
precision D-13
prime 17-7
range of 1-17, 11-7
real 4-1
recalling 3-2
reusing 2-6, 2-10
rounding 4-18
showing all digits 1-25
storing 3-2
truncating 11-6
typing 1-15, 1-16, 11-1
PRGM TOP 13-4, 13-7, 13-21, F-4
prime number generator 17-7
probability
functions 4-15
normal distribution 16-11
program catalog 1-28, 13-22
program labels
branching to 14-2, 14-4, 14-16
checksums 13-23
O
Ä 1-1
clearing 13-6
OCT annunciator 11-1, 11-4
octal numbers. See numbers
arithmetic 11-4
duplicate 13-6
entering 13-4, 13-6
executing 13-10
converting to 11-2
range of 11-7
indirect addressing 14-20, 14-21,
14-23
typing 11-1
moving to 13-22
one-variable statistics 12-2
overflow
purpose 13-4
typing name 1-3
flags 14-9, F-4
viewing 13-22
result of calculation 1-17, 11-5
setting response 14-9, F-4
testing occurrence 14-9
program lines. See programs
program names. See program labels
program pointer 13-6, 13-11, 13-19,
13-21, B-4
P
Program-entry mode 1-4, 13-6
programs. See program labels
ALG operations 13-4
π A-2
parentheses
in arithmetic 2-12
base mode 13-25
in equations 6-5, 6-6, 6-15
pause. See PSE
payment (finance) 17-1
percentage functions 4-6
periods (in numbers) 1-23, A-1
permutations 4-15
Physics constants 4-8
polar-to-rectangular coordinate conver-
sion 4-10, 9-5
poles of functions D-6
polynomials 13-26
branching 14-2, 14-4, 14-6, 14-
16
calculations in 13-13
calling routines 14-1, 14-2
catalog of 1-28, 13-22
checksums 13-22, 13-23, B-2
clearing 13-6, 13-22, 13-23
clearing all 13-6, 13-23
comparison tests 14-7
conditional tests 14-7, 14-9, 14-
12, 14-17, 15-6
population standard deviations 12-7
power annunciator 1-1, A-3
data input 13-5, 13-13, 13-14
data output 13-5, 13-14, 13-18
deleting 1-28
deleting all 1-5
variables in 13-12, 15-1, 15-7
prompts
deleting equations 13-7, 13-20
deleting lines 13-20
designing 13-3, 14-1
editing 1-4, 13-7, 13-20
editing equations 13-7, 13-20
entering 13-6
equation evaluation 14-11
equation prompting 14-11
equations in 13-4, 13-7
errors in 13-19
affect stack 6-14, 13-14
clearing 1-4, 6-14, 13-15
equations 6-13
INPUT 13-12, 13-14, 15-2, 15-8
programmed equations 14-11, 15-
1, 15-9
responding to 6-13, 13-14
showing hidden digits 6-14
PSE
pausing programs 13-19, 15-10
preventing program stops 14-11
executing 13-10
flags 14-9, 14-12
Q
for integration 15-7
for SOLVE 15-1, D-1
fractions with 5-8, 13-15, 14-9
functions not allowed 13-24
indirect addressing 14-20, 14-21,
14-23
questions A-1
quotient and remainder of division 4-2
R
inserting lines 13-6, 13-20
interrupting 13-19
ending prompts 6-11, 6-14, 7-2,
13-15
lengths 13-22, 13-23, B-2
line numbers 13-22
loop counter 14-18
looping 14-16, 14-17
memory usage 13-22
messages in 13-16, 13-18
moving through 13-11
not stopping 13-18
numbers in 13-7
interrupting programs 13-19
resuming programs 13-16, 13-19
running programs 13-22
stopping integration 8-2, 15-8
stopping SOLVE 7-8, 15-1
Rꢀ and Rꢁ 2-3, C-7
radians
angle unit 4-4
angle units A-2
converting to degrees 4-14
radix mark A-1
pausing 13-19
prompting for data 13-12
purpose 13-1
random numbers 4-15, B-4
RCL 3-2, 13-14
resuming 13-16
return at end 13-4
RCL arithmetic 3-7
routines 14-1
real numbers
RPN operations 13-4
running 13-10
operations 4-1
real part (complex numbers) 9-1
recall arithmetic 3-7
showing long number 13-7
stepping through 13-11
stopping 13-14, 13-16, 13-19
techniques 14-1
testing 13-11
using integration 15-10
using SOLVE 15-6
rectangular-to-polar coordinate conver-
sion 4-10, 9-5
regression (linear) 12-7, 16-1
resetting the calculator A-4, B-2
return (program). See programs
Reverse Polish Notation. See RPN
rolling the stack 2-3, C-7
root functions 4-3
roots. See SOLVE
checking 7-7, D-3
in programs 15-6
multiple 7-9
none found 7-8, D-8
of equations 7-1
of programs 15-1
rounding
shift keys 1-3
sign (of numbers) 1-15, 9-3, 11-6
sign conventions (finance) 17-1
Sign value 4-17
sine (trig) 4-4, 9-3, A-2, C-6
single-step execution 13-11
slope (curve-fit) 12-8, 16-1
SOLVE
checking results 7-7, D-3
discontinuity D-5
fractions 5-8, 13-18
numbers 4-18
evaluating equations 7-1, 7-7
evaluating programs 15-2
flat regions D-8
how it works 7-7, D-1
in programs 15-6
initial guesses 7-2, 7-7, 7-8, 7-12,
15-6
minimum or maximum D-8
multiple roots 7-9
round-off
fractions 5-8
integration 8-6
SOLVE D-13
statistics 12-10
trig functions 4-4
routines
calling 14-1
no restrictions 15-11
no root found 7-8, 15-6, D-8
pole D-6
nesting 14-2, 15-11
parts of programs 14-1
RPN
purpose 7-1
compared to equations 13-4
in programs 13-4
origins 2-1
results on stack 7-2, 7-7, D-3
resuming 15-1
round-off D-13
running programs 13-10
stopping 7-2, 7-8
using 7-1
S
stack. See stack lift
Î
affected by prompts 6-14, 13-14
complex numbers 9-2
effect of 2-6
equation usage 6-11
exchanging with variables 3-8
exchanging X and Y 2-4
filling with constant 2-7
long calculations 2-12
operation 2-1, 2-5, 9-2
program calculations 13-14
program input 13-12
program output 13-12
purpose 2-1, 2-2
equation checksums 6-19, B-2
equation lengths 6-19, B-2
number digits 1-25, 13-7
program checksums 13-22, B-2
program lengths 13-22, B-2
prompt digits 6-14
14-14
sample standard deviations 12-6
SCI format. See display format
in programs 13-7
setting 1-22
scrolling
binary numbers 11-8
equations 6-7, 13-7, 13-16
seed (random number) 4-15
self-test (calculator) A-5
registers 2-1
reviewing 2-3, C-7
rolling 2-3, C-7
separate from variables 3-2
size limit 2-4, 9-2
unaffected by VIEW 13-15
stack lift. See stack
default state B-4
syntax (equations) 6-14, 6-19, 13-16
T
tangent (trig) 4-4, 9-3, A-2, C-6
temperatures
disabling B-4
enabling B-4
converting units 4-14
limits for calculator A-2
test menus 14-7
not affecting B-5
operation 2-5
standard deviations
calculating 12-6, 12-7
grouped data 16-18
normal distribution 16-11
standard-deviation menu 12-6, 12-7
statistical data. See statistics registers
clearing 1-5, 12-2
correcting 12-2
testing the calculator A-4, A-5
time formats 4-13
time value of money 17-1
T-register 2-5
trigonometric functions 4-4, 9-3, C-6
troubleshooting A-4, A-5
turning on and off 1-1
TVM 17-1
twos complement 11-4, 11-6
two-variable statistics 12-2
entering 12-1
initializing 12-2
one-variable 12-2
U
precision 12-10
sums of variables 12-11
two-variable 12-2
uncertainty (integration) 8-2, 8-6
units conversions 4-14
statistics
V
calculating 12-4
curve fitting 12-8, 16-1
distributions 16-11
grouped data 16-18
one-variable data 12-2
operations 12-1
variable catalog 1-28, 3-4
variables
accessing stack register contents B-
7
arithmetic inside 3-6
catalog of 1-28, 3-4
clearing 1-28
two-variable data 12-2
statistics menus 12-1, 12-4
statistics registers. See statistical data
accessing 12-12
clearing all 1-5
clearing while viewing 13-15
exchanging with X 3-8
in equations 6-3, 7-1
in programs 13-12, 15-1, 15-7
indirect addressing 14-20, 14-21
names 3-1
clearing 1-5, 12-2
contain summations 12-1, 12-11,
12-12
correcting data 12-2
initializing 12-2
no fractions 5-2
viewing 12-11
number storage 3-1
of integration 8-2, 15-7, C-8
polynomials 13-26
STO 3-2, 13-12
STO arithmetic 3-6
STOP 13-19
storage arithmetic 3-6
subroutines. See routines
sums of statistical variables 12-11
program input 13-14
program output 13-15, 13-18
recalling 3-2, 3-4
separate from stack 3-2
showing all digits 13-15
Index-10
solving for 7-1, 15-1, 15-6, D-1
storing 3-2
testing 14-7
unaffected by VIEW 13-15
storing from equation 6-12
typing name 1-3
viewing 3-4, 13-15, 13-18
vectors
absolute value 10-3
addition, subtraction 10-1
angle between two vectors
10-5
coordinate conversions 4-12, 9-5
creating vectors from variables or
registers 10-8
cross product 17-11
dot product 10-4
in equation 10-6
in program 10-7
VIEW
displaying program data 13-15,
13-18, 15-6
displaying variables 3-4
no stack effect 13-15
stopping programs 13-15
volume conversions 4-14
W
weight conversions 4-14
weighted means 12-4
windows (binary numbers) 11-8
X
evaluating equations 6-10, 6-12
running programs 13-10, 13-22
X ROOT arguments 6-17
X-register
affected by prompts 6-14
arithmetic with variables 3-6
clearing 1-5, 2-3, 2-7
clearing in programs 13-7
displayed 2-3
during programs pause 13-19
exchanging with variables 3-8
exchanging with Y 2-4
not clearing 2-5
part of stack 2-1
Index-12
|