Reviews & Opinions
Independent and trusted. Read before buy HP 40G!

HP 40G Manual

Preview of first few manual pages (at low quality). Check before download. Click to enlarge.
Manual - 1 page  Manual - 2 page  Manual - 3 page 

Download (English)
HP 40G, size: 2.5 MB
Related manuals
HP 40GS Graphing Calculator 39gs_40gs_mastering The Graphing Calculator__e_f2224-90010.pdf
HP 40G Graphing Calculator
HP 40G Graphing Calculator 39g+ (39G & 40g)_mastering The 39g+__e_f2224-90010.pdf
HP 40GS Graphing Calculator

Instruction: After click Download and complete offer, you will get access to list of direct links to websites where you can download this manual.


HP 40GHP 40gs Graphing Calculator for Math - Science - Engineering

Graphing - HP

This ideal classroom graphing tool uses Computer Algebra System (CAS), familiar algebraic entry-system logic and displays answers in symbolic, numeric, and graphing views. Create and store Aplets with 2.25MB total memory.

Brand: "HP Calculators"
Part Numbers: 40GS, F2225AA, F2225AA#ABA, F2225AA-ABA, F2225AAABA, HDPMSG40EA7, HP 40GS, HP 40gs, HP HP40GS, HP-40GS, HP-HP40GS, HP40GS
UPC: 00882780045217, 0882780045217, 882780045217
[ Report abuse or wrong photo | Share your HP 40G photo ]

Video review

Swiss national anthem on a calculator


User reviews and opinions

Comments to date: 8. Page 1 of 1. Average Rating:
cyberchucktx 12:17pm on Tuesday, October 12th, 2010 
I recon its cool, but lol 80GB solid state ? I would have thought it would be slower lol.
LoloCeresa 2:20am on Sunday, September 26th, 2010 
The Intel 160GB Solid State Drive. A hard drive that has basically changed my entire experience with computers.Being in computers for over 20 years.
juicy_justine_69 7:58pm on Monday, July 19th, 2010 
After reading many reviews, it seems that the Intel X25-M is the overall best SSD drive to get. And with the new 34nm version of the drive dubbed G2,...
zerr00ne8me 2:00pm on Tuesday, June 29th, 2010 
No issues with install, fast, great product. Easy To Install","Fast","Quiet","Reliable Hard to Learn I had a Western Digital Caviar Black 640GB and it was fast but when it came to seek times it was like most hard drives; slow. I use the SSD as a boot drive and for the primary programs that I use. This includes games, Office, etc.
Brix 11:07am on Monday, June 28th, 2010 
use as boot drive and a few highly used programs, even with trim on my WEI rating has dropped to 7.
quellerie 7:53am on Monday, April 12th, 2010 
i have tried many ssd drives from many makers...  this thing is fast no denying that fact as well this drive will wear fast and die hard If you want performance and reliability, go with an Intel SSD.
gamzu 9:07pm on Monday, March 29th, 2010 
I bought the generation 2 model (model number SSDSA2MH160G2C1) from Fast, nice capactiy for an SSD, good value for an SSD.
hiking 12:59pm on Friday, March 12th, 2010 
The SSD to get for your notebook I have been using this drive in a dual-core netbook for 6 months. While no MacBook Air 11". Great way to speed up you PC Very nice. No long waiting times after windows has loaded while pesky startup apps hammer you HDD. This thing is zippy.

Comments posted on are solely the views and opinions of the people posting them and do not necessarily reflect the views or opinions of us.




Creating a copy of a Standard aplet...230
Some examples of saved aplets...232
Storing aplets & notes to the PC...237


Software is required to link to a PC...238
Sending from calculator to PC...239
Receiving from PC to calculator....244
Aplets from the Internet....245
Using downloaded aplets...249
Deleting downloaded aplets from the calculator...250
Capturing screens using the Connectivity Kit..251
Editing Notes using the Connectivity Software...252
Programming the hp 39gs & hp 40gs...255
Alternatives to HP Basic Programming...281

Flash ROM....284

The design process....255
Planning the VIEWS menu....257
The SETVIEWS command....259
Example aplet #1 Displaying info...262
Example aplet #2 The Transformer Aplet...268
Designing aplets on a PC...270
Example aplet #3 Transformer revisited...272
Example aplet #4 The Linear Explorer aplet..274
Programming Commands....286
The The The The The The The The

Aplet commands....286

Branch commands....287

Drawing commands....289

Graphics commands....291

Loop commands...291

Matrix commands....292

Print commands...293

Prompt commands....294
Appendix A: Some Worked Examples...298
Finding the intercepts of a quadratic...298
Finding complex solutions to a complex equation..299
Finding critical points and graphing a polynomial..300
Solving simultaneous equations...302
Expanding polynomials...304
Exponential growth....305
Solution of matrix equations...307
Finding complex roots....308
Complex Roots on the hp 40gs....309
Analyzing vector motion and collisions...310
Circular Motion and the Dot Product...311
Inference testing using the Chi2 test...312
Appendix B: Teaching or Learning Calculus...314
Investigating the graphs of y=xn for n an integer..314
Domains and Composite Functions....315
Gradient at a Point....317

Gradient Function....318

The Chain Rule....319


Area Under Curves....320
Fields of Slopes and Curve Families...320

The VARS key The VARS key is used, mainly by programmers, as a compact way to access all the different variables stored by the calculator including aplet environment variables.
Shown right are two views of the VARS screen, the first from the HOME list showing the graphic variables (memories) G1, G2. and the next from the APLET list showing some of the variables in the set controlling PLOT.
The VARS key is not generally used much, and you may not have followed this explanation. This is not important as it is a key that is very rarely used by the average user. A few uses for the average user are detailed in the Function aplets Expert User section on page 62.
The MATH key next to VARS is far more important and provides access to a huge library of mathematical functions. The more common functions have keys of their own, but there is a limit to the number of keys that one can put on a calculator before it takes too long to find the key required. Hence the MATH key.
The MATH menu lists all those functions that would not fit onto the keyboard plus some which also appear on the keyboard. Shown in the screen snapshot right is a small selection of the total list. For a listing of almost all the functions, with examples of their use, see the chapter entitled The MATH Menus on page 165.
As is usual with all calculators, most of the keys have another function above the key. The hp 39gs and hp 40gs get twice the action from each key by having this second function.
The second function is accessed via the SHIFT key on the left side of the calculator. Although this book will sometimes tell you explicitly to press this key, in most cases it will be assumed that you are intelligent enough to work out for yourself when it is necessary to press it.
The ALPHA key gives access to the alphabetical characters, shown below and right of most keys. Pressing SHIFT ALPHA gives lower case.
Calculator Tip If you press and hold down the ALPHA key you can lock alpha mode, although this doesnt work for lower case. Many people use this to type in functions by hand rather than going through the MATH menu. Some views, such as the Notepad, also offer a screen key function that lets you lock either upper or lower case alpha mode.
The SETUP views The SETUP views, above PLOT, SYMB and NUM, are used to customize their respective views. For example, the PLOT SETUP screen controls things like axes, labels etc. Their use changes in different aplets, so for more information see the explanations in the chapters dealing with the various aplets, particularly in the Function aplet on page 50.
The SYMB SETUP key is only used in one place, which is to choose the data model for bivariate statistics in the Statistics aplet. It is not available in the other aplets and trying to access it will result only in a quick flash of an exclamation mark on the screen to say Youve done something wrong!.
Information on the use of the SKETCH and NOTE views (located above the APLET and VIEWS keys) can be found in the chapters Working with Sketches and Working with Notes & the Notepad on pages 222 & 217.

Calculator Tip Decreasing TStep beyond a certain point will slow down the graphing process without smoothing the graph any further. Using 0.05 is generally enough. Since trig functions are often used in parametric equations, one should always be careful that the angle measure chosen in MODES is correct. The default for all aplets is radian measure.
As usual, the NUM view gives a tabular view of the function. In this case there are three columns, since X1 and Y1 both derive from T.
As with the Function aplet, it is possible to change the starting point and step size of the table, and also to change it into a Build Your Own type of table (see page 70).

Fun and games

Apart from the normal mathematical and engineering applications of parametric equations, some interesting graphs are available through this aplet. Three quick examples are given below. Example 1 Try exploring variants of the graph of:

) = 3sin 3t

y ( t ) = 2sin 4t
Example 2 Try varying the values of A and B in the equations:
x1(t) = ( A + B)cos(t ) Bcos(( A B +1)t )

y1(t) = ( A + B)sin(t )

Bsin(( A B +1)t )
Hint: An easy way to vary A and B is to store values to memories A and B in the HOME view and enter the equations exactly as shown. New graphs can then be created by changing back to HOME and storing different values to A and B. The example shown uses A=4, B=2.5 and has axes set with TRng of 0 to 31.5 step.2, XRng of -21.66 to 21.66 and YRng of -12 to 9. It also has Axes d in PLOT SETUP. un-
Example 2 Try varying the constants in the equations:
x1(t) = 3sin(t) + 2sin(15t)

= 3cos(t) + 2cos(15t) t)

For those who remember them, this is curve like those produced by a Spirograph.


The Parametric aplet can be used to visually display vector motion in one and two dimensions. Example 1 A particle P is moving in a straight line. Its velocity v (in ms-1) at any time t (in seconds, t>0) is given by v(t ) = 2t 5t 2 + 2t 3. Illustrate its motion during the first 2.5 seconds.
Enter the motion equation from (v) as X(T) and enter Y(T)=T. The only purpose of this second equation is to move the particle up the y axis as it traces out its path, thereby making it easier to view.
Changing to the NUM view lets me scroll through the first three seconds of movement, allowing me to choose a good scale for the x axis.
Im interested in the first 2 seconds only, so Ill also restrict TRng to 0 to 2.5. Using Y(T)=T for this TRng means the y values will also range from 0 to 2.5. Maximizing visibility of this range of values is the reason for setting YRng to be 0.5 to 3 in PLOT SETUP. The range for the x axis is chosen from the values shown in the NUM view. The value of TStep is carefully chosen so that when the motion plots, the speed is slow enough to show its progress. The graph makes it plain that it doubles back twice in the first two seconds. The really nice part about this method though is that the motion can be seen on the screen. As the particle slows down near the turning points it does so on the screen. As it accelerates in the final section you can see this on the screen too. Obviously this cant be seen on this page, and I recommend you try this for yourself.



- a*X^2+b*X+c

- a*X^3+b*X^2+cX+d
a 0 b = 1 c 8 d 27 1 PREDY (0) PREDY (1) 1 PREDY (2) 1 1 PREDY (3)


- b*EXP(m*X)

b = PREDY(0)

m = PREDY(1)/PREDY(0)


- a*SIN(b*X+c)+d
There is no easy way to retrieve the coefficients in the trigonometric equation. The simplest way is to firstly transfer it to the Function aplet by entering F1(X)=PREDY(X) into the Function aplet, highlighting it and then pressing. If you now change to the HOME view and type F1(QUOTE(X)) then the equation will it and edit out any coefficients you want. Clearly this is not appear in the HOME view. You can then ideal. It would be simpler to write them down and re-type them when required!
Correct interpretation of the PREDX function The PREDX function in the MATH menu is not really a way of predicting x values despite its name. Algebraically it simply reverses the line of best fit. For example, the equation Y = X +earlier would use

X = (Y 1.1662) 0.8199

to predict the X values.
Whether this is mathematically correct depends on how you interpret the PREDX function. If, as HP intended, you interpret it to mean give me an x value which, if used in the PREDY function, would give me this y value, then it is correct. However, it should not be interpreted to mean predict an x value based on this y value as most people might. The reason for not using the second interpretation is that the results it gives would then be incorrect. The line of best fit (unlike the correlation) changes as the independent and dependent variables swap roles and cant be simply algebraically reversed in this way. It should not be thought that the hp 39gs & hp40gs are unusual in this odd interpretation. Most calculators equivalent of the PREDX function behave in the same manner.
The formula for the slope b in the line of best fit y = a + bx is given by

the formula: b =

( Sx )
While the value of S xy will not change if the roles of independent and dependent columns are reversed, the value of ( S x ) on the bottom means that this formula will give a different value if you change which column is
regarded as x (independent) and which as y (dependent). This different value for b will also mean a different value for a and these will not be the values which would result from the simple inverse function. If you truly wish to predict X values in the sense of the second interpretation, then you should change to the SYMB view and enter a new data set S2 which uses C2 and C1 in reversed order, avoiding the need to re enter the data.

A + 4 or 36A 1 , which is linear. Thus LINEAR? would return
a value of 1 as shown right. The main use for this is going to be when a programmer does not know in advance what function the user is going to type in.
b b 2 4ac to give both 2a roots of a quadratic, using the S1 formal variable to represent the
This function uses the quadratic formula x =
symbol. The quadratic is entered as an expression, and you must indicate which variable is being solved for, since you could have an equation such as Px 2 + Qx 5 = 0 where P and Q were memory values,
and you would need to specify to solve for X in order to tell the calculator that the active variable was X and

not P or Q.

Solve x x 5 = 0 Use QUAD(X2-4X-5,X) Answer: (4+S1*6)/2
It is now up to you to interpret this algebraically as:

or = = 5 or 1

If you are simply after the roots of the quadratic then it is far better to use the POLYROOT function (page tools. 298) or to graph the function and use the
3+ 5 rather than 2.6180 then you would have to COPY the result, edit 2 the line to remove all but the decimal root and square it to find the original discriminant.
If you would like a solution such as
If you are fortunate enough to have an hp 40gs rather than an hp 39gs then you can do all this far more easily in the CAS. See page 309 for details on finding roots of real and complex polynomials using the CAS on the hp 40gs. See also: FNROOT, LINEAR?
QUOTE(<var_name>) Again, this is a function intended for use mainly by programmers. Programmers sometimes want to store a. It turns out that if you use F1(X2 - 4) then it function such as X2 - 4 into one of F1(X)F9(X) using wont be entered symbolically. Instead, the contents of memory X (a number) is substituted and entered and then the expression is evaluated to give a numeric result. The QUOTE function fixes this. For example, QUOTE(X)2 - 4 F1(X) will ensure a symbolic result. An easier method of storing a function into an aplet in a program is to enclose it in single quotes. For example '(X)2 - 4' F1(X) would serve the same purpose as QUOTE(X)2 - 4 F1(X). On the other hand, entering F1('X') will not work but F1(QUOTE(X)) will. No-one ever promised consistency! See Example 1 on page 262 in the chapter Programming on the hp 39gs & hp 40gs for an example of use in writing code.
The | function written as: <expression> | (var1=value,var2=value,) This is called the where function. The reason for this is that it is used to evaluate formulas, of the type when one would say Evaluate., where a = 5, b = 4 etc. The formula must be in the form of an expression rather than an equation. You should enter the expression first, then the where symbol and then the values of all the variables in the expression. Any not supplied will be evaluated using the value currently stored in that memory. This is again a function which is of more use to programmers since this is definitely handled far more flexibly in the Solve aplet. Eg. 1 Evaluate Use: Answer:0.5

As you can see, the normal keyboard function e^ gives an answer to
e0.0000003 of 1.0000003. This gives the impression that it is an exact
value (since it doesnt show a full 12 significant digits). The true answer is 1000000300000045. but the final digits have been lost in the rounding off to 12 sig. figures. By giving an answer of e 1 , the leading 1 is lost, freeing the calculator to show more accuracy by dropping the leading zeros. This is not normally be needed in the classroom.
LNP1(<num>) As in the previous function, this is supplied to supplement the LN function and gives a more accurate value when x is near zero. Again, this is not something which would normally be of concern at school level.
The Calculus group of functions
function, the differentiate, or function and the This group consists of three functions, the integrate, or TAYLOR function. The first two are discussed in detail in the chapter dealing with the Function aplet (see pages 59 to 75) and so a brief outline only is given below.
(<num>,<num>,<expression>,<var_name>) This function will return the definite integral of the expression when integrated with respect to the variable specified. Any other variables in the expression will be regarded as constants with values taken from the current memory values. Symbolic integration can be done in two ways. Firstly by replacing one of the limits of integration with a symbolic variable S1 (S1S5). Secondly, and more conveniently, by doing it in the Function aplet (see pages 59 to 75).
<var_name>(<expression>) This function will differentiate the expression with respect to the variable specified. This can be done in two ways. When done in the HOME view the result is numeric because the derivative is evaluated for the current value of the variable in memory. For example, if X currently has the value of 3 then the result is as shown right. When done in the Function aplet, or using a symbolic variable (S1S5), the result is the algebraic derivative (see pages 59 to 75).
TAYLOR(<expression>,<var_name>,<num>) Briefly, a Taylor polynomial allows you to approximate a complicated function via a simpler polynomial function. The <expression> supplied is approximated with respect to <var_name> by terms of a polynomial up to <num> power. The screen shot on the right shows the calculator deriving the Taylor polynomial for sin(x) up to the 7th power. The SIN(X) function can be approximated by taking terms from the polynomial:

Attached programs If your aplet is one that has been given to you by someone else such as your teacher, rather than simply a copy of one of the standard ones, then it may have one or more helper programs associated with it. For example, almost all the aplets available from the Hewlett-Packard web site come with sets of up to 6 or 7 programs to do the work, and without which they are totally useless. The screen shown right contains a number of programs which belong to an aplet called Coin Tossing which can be downloaded from the web site The HP HOME view (at
Normally you do not need to worry about this, since the calculator knows they belong with the aplet and will automatically transmit them with it. This can greatly increase the transmission time and it is important that you dont interrupt the process early. If you want to see these helper programs, press SHIFT PROGRAM to see a list of the programs currently on your calculator. Even if there are no other programs currently stored, you will always see the Editline entry. It contains a record of the last calculation you did in the HOME view and cant be deleted.
Apart from curiosity, there is one important respect in which you need to know about these programs, and that is when it comes time to delete an aplet. The helper programs must be deleted from the Program Catalog manually after deleting the main aplet in the APLET view. For more information on this see page 250.
Receiving from PC to calculator
The process of retrieving objects that have been stored to the PC is almost identical to that of sending them in the first place.
Connect the calculator, run the software and choose the folder in which the aplets, notes, or other objects are stored. Then press the button and again choose the USB Disk drive option from the menu.
The Connectivity software will respond with a list of objects contained in the folder you selected.
If you only want to download one of them then just highlight it and press ENTER. To download multiple objects use the button to select them.
Calculator Tip The displayed list will contain only objects that are appropriate for the current view of the calculator. The folder may contain many aplets or programs but if you press in the Matrix view then you will see only matrix objects or perhaps nothing at all.
The calculator comes with a number of aplets built into the chip. In addition to these there are hundreds of aplets available to do things such as explore graphs, solve vector problems, explore matrices or analyze time series data, as well as many common tasks called for in Physics and Chemistry. Some of these aplets are straight forward and task oriented. Others are designed to be teaching aplets which allow you to explore concepts and learn for yourself. The Quadratic and Trig Explorer aplets, now built into the chip, were once teaching aplets which had to be downloaded from the web. Each successive model adds another one or two new aplets to those which are standard.

Finding aplets The Hewlett-Packard site is one possible starting point and can be found at From that point you can follow the links to collections of material for the hp 39gs and/or hp 40gs as well as to software and utilities. Other sites can be found that have been created by enthusiasts. One of the most extensive is that of the author, The HP HOME view, found at
A small excerpt from The HP HOME view is shown below.
You may notice separate download icons for the 38G and for the 39G, 40G and 39g+ with no mention of the new hp 39gs and hp 40gs. This will change as the sites update the contents to reflect the new models.
In general, any aplet which is suitable for the older HP39G, HP40G or hp 39g+ will also work on the new hp 39gs and hp 40gs. Some games may not be for two reasons. Firstly the earlier models used a slower chip and this means the older games sometimes run so fast that they are unplayable. Secondly, some of them directly access the calculators chip. If the address on the chip they reference has changed from the old model to the newer one then running the aplet may cause the calculator to lock up or spontaneously reset. The worst result will be loss of user memory. None of the aplets designed for the earliest model, the HP38G, will work on older models.
If you own a calculator then you will already have the required cable with which to download from the internet. If you bought yours second hand without a cable then youll need to purchase a cable from an electronics store. The mini-USB cable required is the same as that used by many digital cameras.
Downloading an aplet from the web is very simple. Any site will present you with a page which may be similar to the one on the previous page. It may contain either programs or aplets or both. Generally you will be able to click on a link that lets you download that aplet as a compressed ZIP file.
A ZIP file is a special type of file which contains one or more files in compressed. The reason for the compression is simply to allow you to download them from the Internet as one single file instead of having to download each one of the collection separately. The ability to expand these ZIP files is built into Windows XP and you should de-compress them as soon as you have them on your PC. Just double click on the file and it will open as if it is a folder. You should then move or copy them into a normal folder (one that isnt a compressed file).

The HP39DIR files The software that sends the files to the calculator cant work on them if they are inside a compressed file so you must expand them before using them.
Calculator Tip It is critical that you decompress each aplet into a separate directory. Each aplet has two special files called HP39DIR.000 & HP39DIR.CUR which always have this same name. Decompressing two aplets into the same directory will cause these two special files from the first one to be overwritten by those of the second. The aplet itself will not be harmed by this but the effect is to render it invisible to the calculator, since these two special files contain information telling the calculator about the aplet.
Organizing your collection Shown below and right is the contents of one directory in part of my collection.
If youre only going to download a few aplets then organization will not be as important. If you are a teacher or if you are intending to download lots of aplets then you might consider setting up a logical structure of directories to contain them. For example, a teacher might choose to set up a structure containing directories for each of the courses being run, with further directories containing all the aplets which were relevant to that course. Again, it must be stressed that each aplet must be in a separate folder!
Having downloaded an aplet from the web to the computer, we now have the task of transferring it from the computer to the calculator via the HP Connectivity Software. To do this, of course, you need the mini-USB cable that came with your calculator (see page 239) plus some software.
The process of transferring the newly downloaded aplet from the PC to the calculator is exactly the same as it is for an aplet which you have saved to the PC yourself. The instructions for this can be found on page 244. It is important to realise that most sites contain both aplets and programs. Aplets are stored in the APLET view and generally have a PLOT view, SYMB view and NUM view like most normal aplets. Programs do not and are generally less complex and less powerful. A program generally will just ask you for a few values and then display a result and will generally be much less flexible in its operation. button. To download a To download an aplet you should be in the APLET view when you press the menu will only display things that are program you should be in the PROGRAM CATALOG. The appropriate for that view aplets in the APLET view, programs in the PROGRAM CATALOG.

The aim now is to create the Views menu, adding code to each view as we go. If you are not sure what the Views menu is then you should go back and read the information starting on page 255 before proceeding.
This is done using the portion of the screen shown to the right. As was explained on page 259, the SETVIEWS command works using triplets of information and this screen simply automates this process. For each entry you supply a View Name (the text that is to appear in the menu), a Program Name (this program runs when they choose this option) and an Exit View (the view that you are placed in when the program finishes running).
As you enter each triplet of information you should press the Add View button to add it to the menu. Other buttons are provided to delete an entry or to edit it by replacing the currently highlighted one with yours.
As you enter each triplet, the boxes will blank ready for the next menu item to be added. You can construct the entire menu at one time OR you can edit the code for the program before proceeding. In many ways it is better to design the entire menu structure before beginning to code but that may not be the way you prefer to work.
In the window shown above right you can see that after the view triplet has been added to the menu the Edit View Program button on the far left is enabled. Clicking on this changes the focus from the Aplets tag to the Program tag, allowing you to enter the code for the program.
You should practice this process now by re-creating the Transformer aplet which was used as Example #2 on page 268. You will find the code listed on the pages following 268.
Please note that if you open the folder in which you have created your aplet you will find the aplet, the programs and also two files called HP39DIR.CUR and HP39DIR.000. Information on these files, which are created automatically by the programming utility, can be found on page 246.
Example aplet #4 The Linear Explorer aplet
If you would like more practice in using the programming utility then you may wish to use it to create this final example, which is a very useful teaching aplet called Linr Explorer. The name would be better as Linear Explorer but names of more than 14 characters will not display properly in the calculators APLET view. This aplet will be somewhat similar to the Quad and Trig Explorer aplets, except that it will explore linear equations. Its parent is the Function aplet.

The next program below runs when the user chooses the second menu option of Explore, and illustrates a very important technique. A copy of the PLOT view is stored in the aplets sketch view and then retrieved and modified using the various graphics commands. The program is broken into parts for discussion purposes.
The reason for the IF G==0 THEN is to check that the blank axes have been plotted and are available for use. If not then the user receives a message to tell them what to do and the remainder of the program is bypassed using the IFTHENELSE statement. Trying to capture a PLOT view that doesnt exist is a major error and will result in the program crashing abruptly. It is possible to allow for errors like this using the IFERR statement but in a teaching example like this it makes the code more difficult to follow.
Still referring to the code on the previous page, you will see that it refers to PageNum. The sketches in the calculators SKETCH view are numbered 1, 2, 3etc. Sketch number 1 is always present but after that only sketches that have been created are available and the program will crash if you try to access one that does not exist.
The aplet variable PageNum is the pointer to the sketch you want and the actual sketch page itself is called Page. Thus the two lines after ELSE are telling the program to store the PLOT view into the first page of the SKETCH view using the command PLOT. This command stores the PLOT view into whatever graphics variable you specify. In this case into Page.
The PLOT view must exist before this can be done or the program will crash. This is the reason for setting up the flag G discussed earlier by doing that we ensure that this section of code only runs if something has been plotted. If you run the program and then later change to the SKETCH view you will be able to see this stored image. Finally, the user is presented with two messages which tell them what to do.
The next section contains the code which performs the work in the aplet by setting up a loop which repeats until the user presses the ENTER key to terminate.
The first line before the loop begins assigns initial values to the variables M (the gradient) and C (the yintercept). The DOUNTIL loop which follows (partly in the next section of code) loops through the code within it until the ENTER key is pressed.
Within the loop, the previously stored SKETCH view is transferred from storage to the display using DISPLAY. The DISPLAY command means transfer to the display screen. The equation of the current line is then displayed in the top left corner using the DISPXY command which allows you to write text onto the screen. Two versions are needed to avoid an expression like y=2x+ -1 and write instead y=2x-1.

Fields of Slopes and Curve Families
One of the concepts which students find quite difficult to come to grips with is that of sketching a field of slopes from a derivative function and, from this, sketching a family of curves. An aplet from The HP HOME View web site (at, called Slope Fields, will assist with this process.
In this aplet the user enters the derivative function into F1(X) and then uses the VIEWS menu to produce a field of slopes. A cross-hair is projected onto the field which the user can move around. When the user presses ENTER, a curve is drawn, starting at that point and projecting to the right and then the left, and following the field of slopes. Repetition of this will illustrate the fact that there are a family of curves, separated by a constant, which all fit the description of the function stored in F1(X).
dy = x 2 + 1 , The screen shots to the right are the result of F1(X)=X2+1 dx dy dy F1(X)=X2*Y = x 2 y and F1(X)=(X+1)*Y = ( x + 1) y dx dx respectively.


The topic of inequalities is one that is often included in calculus courses, particularly during the study of domains and this is usually extended to graphing intersecting regions such as
{( x, y ) : y 0.5x + 1 y x 1}.
Although the hp 39gs & hp 40gs do not have the in-built ability to plot inequalities, the process is easily handled using an aplet from The HP HOME View web site (at called Inequations. This aplet allows the user to plot individual or overlapping inequalities but it will not handle functions of the form y<f(x) which require a dotted line.

Rectilinear Motion

A topic which is commonly taught as part of any calculus course is rectilinear motion. This can be enhanced by using the Parametric aplet to graphically illustrate the motion of a particle. If this is set up properly then it can be a very helpful teaching aid, as the graph will slow down and speed up as it appears, illustrating the velocity and acceleration of the particle.
See page 96 for a fully worked example of how the Parametric aplet can be used to produce motion graphs of the form shown right. The graph needs to be seen as it is being drawn to appreciate how the particle slows down and speeds up as it passes the turning points. Try it and see.


For information on exploration of limits in the NUM view of the hp 39gs & hp 40gs and, more importantly, the pitfalls that lie in wait for the unwary, please read the information in the chapter on page 80. As can be seen right, f or those with an hp 40gs, limits can be evaluated in the CAS using the LIMIT function. See page 343. The examples shown right are for

+ 1 x lim and lim.

x + x+ x 2 x 2 2
Piecewise Defined Functions
Piecewise defined functions can easily be graphed on the calculator by breaking them up into their components.

D ^ G X

The result was the tree shown to the right, with nodes P and Q added below node A. You may notice that it is heavily canted to the left and this tends to be fairly typical of the way we generally write expressions.
Now press up arrow three times and then divide by 5.

D ^ X 3 G E F 2

The three up arrows moved the highlight up to node A, high lighting the entire expression. Dividing by 5 therefore applies to the entire expression, with the result shown below.

R A P ^ Q E

The new tree is shown below with nodes R and S added above A. Although it is not strictly necessary for you to understand or use this concept of a tree of operations you may find that it will help you to follow why the highlight behaves as it does as it F moves around. A final example may help with the 2 visualization.

D ^ 3 G X

After typing the 5, press up arrow once to highlight that node S. If you now press left arrow you will find that the highlight will jump horizontally to node A, highlighting the entire numerator. Pressing R down arrow four times moves down through the tree from A to P to B to D to F. To access and change the power of 2, press up arrow twice to move up to node B, then press right arrow to move from node B to node Q. If you now press + and 3 you will find that this is added to the power, with brackets applied as required. Try redrawing the tree as it would now appear. Node Q will then become an addition with two new nodes below.

A P ^ B

Finally, exit the CAS by pressing HOME. Note: There can be a problem with the way that the X2 ^ button is handled. If you try going back through the same exercise but pressing the X2 button at step 3 F 2 you will find that this makes it impossible to access and edit the power because the X2 operation is stored differently. This is purely a personal preference generally.

D X 3 G E

Another example of a tree for
of the expression. It can be seen that despite having three terms the result is still a binary tree. The squares show the terms which will be highlighted in turn if the pressed.
x2 + 4x + 3 is given below to illustrate the result of having three terms in part x2 x 2 term is highlighted and then the right arrow is
Special characters As in the HOME view, special characters such as inequalities are available from the CHARS view, although the appearance of the CHARS view is somewhat different as can be seen right. There are no page up/down buttons, which makes it more difficult to move through. The initial two rows are invalid characters that cant be used exactly why they were included is not clear.


Tips & Tricks - Solve... 121
Easy problems... 121 Harder problems.... 121
The Stats Aplet - Univariate Data.. 122
Uni vs. Bi-variate data... 122 Clearing data.... 122 Sorting data.... 123 The STATS key.... 123 Functions of columns.... 124 Registering columns as in use.... 124 Working with frequency tables... 125 Auto scale.... 125 Plot Setup options.... 126 Box and whisker graphs... 126 The effect of HRng.... 127 Grouped data & HWidth... 127
Tips & Tricks - Univariate Data... 129
New columns as functions of old... 129 Simulating Dice.... 129 Simulating Random Variables... 130
The Stats Aplet - Bivariate Data.. 132
Uni vs. Bi-variate data... 132 Clearing data.... 132 Entering data as ordered pairs... 133 Adjusting the symbols used to plot points... 133 The cursor.... 133 Sorting paired columns.... 134 Specifying the fit model.... 134 Multiple data sets... 134 Choosing from available fit models... 135 The User Defined model.... 135 Connected data.... 136 Two Variable Statistics.... 137 Showing the line of best fit.... 138 Predicting using PREDY.... 140 Predicting using the PLOT view.... 140 RelErr as a measure of non-linear fit... 141
Tips & Tricks - Bivariate Data... 143
New columns as functions of old... 143 Using values from in calculations... 143 Obtaining coefficients from the fit model... 145 Finding Fit Coefficients.... 145 Correct interpretation of the PREDX function.. 146 Assigning rank orders to sets of data... 147 Using Stats to find equations from point data.. 148
The Inference aplet... 150
Using the Chi2 test on a frequency table.. 150 Hypothesis test: T-Test 1-.... 151 Confidence interval: T-Int 1-... 153 Hypothesis test: T-Test 1 -2... 154 Hypothesis test: Z-Test 1-.... 156
Tips & Tricks - Inference... 158
Importing from a frequency table... 158

The Finance aplet... 160

Parameters..... 160 Straightforward compound interest... 161 Annuity....162 Loan calculations.... 162 Amortization.... 163
The Quad Explorer teaching aplet... 164

Suppose we define a trig function in the Function aplet as shown. The default setting for the Function aplet is radians, so if we set the axes to extend from - to , the graph would look as shown right. In the PLOT view shown, the first positive root has been found (see page 63) as x=1.0471 On the hp 39g+, if we now change to the HOME view and perform the calculation shown right, we expect that the answer should be zero, as indeed it is. However, this is only the case because the angle measures of HOME and the Function aplet agree. The problem was that on the hp 38g the default setting for the Function aplet was radians, while HOME had a default setting of degrees and its setting was independent of those of the aplet. This meant that a calculation such as the one above would give incorrect results, and caused considerable confusion to some students. It even resulted in users returning their hp 38g to dealers as faulty! The only drawback of this method is that you might change aplets and forget that it may also change settings. For this reason, the name of the active aplet is shown at the top of the HOME view as a reminder. On the hp 39g+ you can see that if we turn Labels on and then PLOT, the numeric mode also affects the axis labels.
This setting also applies to the appearance of equations and results displayed using the SHOW command. Calculator Tip Under the system used on the HP39+, if you want to work in degrees then you will need to choose that setting in the MODES view and possibly set it again if you change to another aplet. Some people choose to go through and change the setting on all the aplets at once so that they dont have to remember that it might change. However, if you the aplet the default setting will return.

Memory Management

One of the major complaints about the hp 38g was its memory - mainly the lack of it, but also the inability to control or manage it. This problem has been addressed on the hp 39g+ in two ways. Firstly, the hp 39g+ has over ten times the useable memory of the hp 38g. At 232 Kb (vs. only 23 Kb), there are very few users who will come close to filling the hp 39g+. Depending on size, there is enough room for at least fifty aplets, or for over 10,000 data points. The MEMORY MANAGER view In addition to extra memory, the hp 39g+ supplies a better way to control it through the MEMORY MANAGER view. If you press the MEMORY key you will see the view shown right. Scrolling through it will show you exactly how the available memory is currently being used. The remaining memory, in Kb, is shown at the top right of the screen. This view gives an overview of the memory. For detailed management the key is provided. Pressing on any entry will take you a relevent screen in which you can delete entries no longer needed. For example, with the highlight on Aplets, pressing will take you to the APLET view (right), where you can choose to delete or reset any aplets no longer required.

Axes The third option Axes: controls whether axes are drawn. The fourth Inv.Cross: controls the appearance of the cursor that is moved by the arrow keys. It is best if you try this one yourself to see the effect. Labels The fifth option Labels: controls whether labels (X, Y and numbers) are put on the axes. The only time this causes problems is if the scale is an odd one, causing the labels to have too many decimal places. Grid The sixth and last check Grid: causes a grid of dots to be drawn on the screen (see right). The density of the grid is controlled by the values of Xtick and Ytick. This can be quite useful.
The default axis settings
The default scale is displayed in the PLOT SETUP view shown right. It may seem a strange choice for axes but it reflects the physical properties of the LCD screen, which is 131 pixels wide by 63 pixels tall. A pixel is a picture element and means a dot on the screen. The default scale means that each dot represents a jump in the scale of 0.1 when tracing graphs. The y value is determined by the graph, of course, and has nothing to do with your choice of scale. Once the scale changes, the cursor jumps from dot to dot are often not a useful size. See page 69 for information on choosing nice scales.
The MENU toggle If you look at the screen key list at the bottom of the screen you will see only a single entry, labeled.
Press the key under it and your screen will change to look like the one above right. Press it again and the screen will clear completely. Once more and you are back to the original appearance. Try pressing it a few times to get the feel for its behavior. This is what is key is a known as a toggle switch. The triple toggle, cycling through each of the display modes shown right. The first default mode is (X,Y) mode, which displays the coordinates of the current cursor position. In any of these modes the up/down arrows move the cursor from function to function, while the left/right arrows move along the currently selected function. Calculator Tip Pressing SHIFT right arrow or SHIFT left arrow will jump the cursor directly to the right or left side of the screen.

The Menu Bar functions

In the examples and explanations which follow, the functions and settings used are:

Calculator Tip Note that common sense tells us that the answer is almost certainly -3.75 rather than -3.75000000002. The small error is simply due to accumulated rounding error in the internal methods used by the calculator. For example, an answer of 0.4999999999 should be read as 0.5. This is quite common and students should be aware of the need for common sense interpretation.
Areas between and under curves If we are wanting to find true areas rather than the signed areas given by a simple definite integral then we must take into account any roots of the function. This process is shown in detail on page 83, as there are certain tricks which can be used to make the process far simpler.
Extremum menu is the The final item in the Extremum tool. This is used to find relative maxima and minima for the graphs. Ensure that is switched on and that the cursor is positioned on the cubic F2(X) in the vicinity of the left hand maximum (turning point) as shown right. Press and choose Extremum from the menu. You should find that the cursor will jump to the position of the maximum.
Calculator Tip If your graph has asymptotes then make sure that the cursor is positioned on the side of the asymptote containing the extremum before initiating the process. The internal algorithm used does not cope well with intervening asymptotes.
Finding a suitable set of axes This is probably the most frustrating aspect of graphical calculators for many users and there is unfortunately no simple answer. Part of the answer is to know your function. If you know, for example, that your function is hyperbolic then that immediately gives information about what to expect. If you dont have knowledge then here are a few tips: 1. Try just plotting the function on the default axes. You may find that enough of the function is showing to give you a rough idea of how to adjust them to display it better. Remember that ZOOM can work on either axis or on both. See Tip #4 on the next page. 2. The NUM view can be very helpful. Try changing to NUM SETUP and setting the value of NumStep to 1, or even 5 or 10. Now scroll through the NUM view and look at what is happening to the F(X) values. Look for two things. Firstly, where is the function most active? For what domain on the x axis is it changing fastest? This is likely to be the domain you are most interested in. Secondly, what is the range? What sort of values will you need to display on the y axis? Now change to the PLOT SETUP view and set what you think may be appropriate axes. From those you can PLOT and then zoom in or out. 3. If the graph is part of a test or an examination then the wording of the question will often give a clue as to what x axis domain you should work with. 4. I most often use Auto Scale to get a first approximation to a good set of axes. To do this you must choose your x axis domain first so try Tip #2 above and use your knowledge of what the function might look like.

In the graphs above the cursor is at x =. The coordinates at the bottom of the screen should show F1(X)=0 but doesnt due to the fact that the value of stored internally is not (and of course cannot) be exact. The rounding of in the 13th decimal place means that the resulting trig values will be wrong in the 11th to 15th decimal place depending on the function used.
Downloaded Aplets from the Internet
The most powerful feature of the hp 39g+ is that you can download aplets and programs from the internet to help you to learn and to do mathematics. Two quick examples of aplets that are available are shown here. More are listed in the supplementary appendix on Teaching Calculus using the hp 39g+. Notice that in each case the aplet is controlled by a menu. This menu is created by the programmer and attached to the VIEWS button so that it displays in place of the normal menu. Curve Areas This aplet allows the user to find approximations to the area under a curve by finding either the lower rectangular area, the upper rectangular area, or the trapezoidal area. The user can choose the end points of the interval, the type of calculation and the number of rectangles to be used. The rectangles are drawn on the screen. A worksheet introduces the idea of integration to find areas.
Linear Programming This aplet visually solves linear programming problems, finding the vertices of the feasible region and the max/min of an objective function. The final stage of finding the vertices is a bit slow on an hp 39g but more acceptable on an hp 39g+.


This aplet is used to graph functions where x and y are both functions of a third independent variable t. It is generally very similar to the Function aplet and so we will look mainly at the way it differs. An example of a graph from this aplet is:
x(t ) = 5cos ( t ) 0 t 2 y (t ) = 3sin ( 3t )

which gives:

Although it you can graph equations of this type, only some of the usual PLOT tools are present. As you can see in the screen shot above, the key is not shown, meaning that none of its tools are available. Thinking about the nature of these equations will tell you why. As usual the first step is to choose it in the Aplet Library. Press the APLET key, highlight Parametric and press. If you wish to ensure that you see the same thing as the examples following then press the button before pressing. As with the Function aplet, this aplet begins in the SYMB view by allowing you to enter functions, but the functions are paired. Each function consists of a function in T for X and another for Y. Choose XRng, YRng & TRng Looking at the PLOT SETUP view, you will see that we now have to enter a range for T as well as the usual ranges for X and Y. It is crucial to understand the different effect of the T range to that of the X and Y. Calculator Tip The default setting for TStep is 0.1. In my experience this is too large and can result in graphs that are not sufficiently smooth. It is worth developing the habit of changing it to 0.05.

The effect of TRng The X and Y ranges control the lengths of the axes. They determine how much of the function, when drawn, that you will be able to see. For example
gives a graph of: whereas. gives a graph of:
Notice that in both cases, is on and shows the T value, followed by an ordered pair giving (X,Y). Unlike XRng & YRng, the effect of TRng is to decide how much of the graph is drawn at all, not how much is displayed of the total picture. For example gives a graph of:
As you can see above, changing the T range from 0 t 2 to 0 t 5 gives a graph that appears only partially drawn. What constitutes fully drawn depends, of course, on the function used. TStep controls smoothness The value of the parameter TStep controls the jump between successive values of T when evaluating the function for graphing. Any graph is always a series of straight lines, and making TStep too large produces a graph which is not smooth. The example on the right shows TStep = 0.5 instead of 0.05.
Calculator Tip ! Decreasing TStep beyond a certain point will only slow down the graphing process but not smooth the graph further. ! Since trig functions are often used in parametric equations, one should always be careful that the angle measure chosen in MODES is correct. The default for all aplets is radian measure.
As usual, the NUM view gives a tabular view of the function. In this case there are three columns, since X1 and Y1 both derive from T. As with the Function aplet, it is possible to change the starting point and step size of the table, and also to change it into a Build Your Own type of table (see page 77).

Fun and games

Apart from the normal mathematical and engineering applications of parametric equations, some interesting graphs are available through this aplet. Three quick examples are given below. Example 1 Try exploring variants of the graph of:

x ( t ) = 3sin 3t

y ( t ) = 2sin 4t
Example 2 Try varying the values of a and b in the equations:
x1(t ) = (a + b)cos(t ) b cos((a +1)t ) b a +1)t ) y1(t ) = (a + b)sin(t ) b sin(( b
Hint: The example shown uses a=4, b=2.5 and has axes set with TRng of 0 to 31.5 step.2, XRng of -21.66 to 21.66 and YRng of -12 to 9. It also has Axes un d in PLOT SETUP.


The Parametric aplet can be used to visually display vector motion in one and two dimensions. Example 1 A particle P is moving in a straight line. Its velocity v (in ms-1) at any time t (in seconds, t>0) is given by v(t ) = 2t 3 5t 2 + 2t 3. Illustrate its motion during the first 2.5 seconds. Enter the motion equation from (v) as X(T) and enter Y(T)=T. The only purpose of this second equation is to move the particle up the y axis as it traces out its path, thereby making it easier to view. Changing to the NUM view lets me scroll through the first three seconds of movement, allowing me to choose a good scale for the x axis. Im interested in the first 2 seconds only, so Ill also restrict TRng to 0 to 2.5. Using Y(T)=T for this TRng means the y values will also range from 0 to 2.5. Maximizing visibility of this range of values is the reason for setting YRng to be 0.5 to 3 in PLOT SETUP. The range for the x axis is chosen from the values shown in the NUM view. The value of TStep is carefully chosen so that when the motion plots, the speed is slow enough to show its progress. The graph makes it plain that it doubles back twice in the first two seconds. The really nice part about this method though is that the motion can be seen on the screen. As the particle slows down near the turning points it does so on the screen. As it accelerates in the final section you can see this on the screen too. Obviously this cant be seen on this page, but I recommend you try this for yourself.

Assigning rank orders to sets of data It is occasionally handy to be able to assign rank orders to a set of data. You might be running a Quiz Competition Night, or recording times for the 100 meter sprint, but in either case it is handy to be able to sort the data into descending order and assign rankings. This is easy for small sets of data, but becomes difficult for larger sets. Let us assume a set of 20 competitors in the 100 meter sprint, with times recorded to two decimal places, and competitors numbered 1 to 20. Suppose that the results were as shown right

Competitor Time

Enter the competitor numbers as column C1 and the times in column C2. Im going to assume here that the competitor numbers also run from 1 to 20 but this may not be the case. In addition to this, put the numbers 1 to 20 into column C3 also. The can be a bit tedious to type in for lists longer than 20, so you could use the expressions MAKELIST(X,X,1,20,1) C1 and C1 C3 to shortcut the process, replacing 20 with whatever is needed. Make sure that the option is selected. The result should look like this Now position the highlight on column C2 and press the key. In the SORT SETUP screen (shown below right) enter C1 as the Dependent column. This will have the effect of pairing columns C1 and C2 and then sorting column C2 into ascending order, rearranging column C1 to reflect the changes. When ready, press. The results of this sort are shown right. The final column C3 has not been re-arranged. With a few alterations, it contains the rankings. Looking down the column it can be seen that there are two values of 11.34 (the 4th and 5th). Their ranking should therefore both be changed to 4. Continuing this process down the length of column 3 will produce the rankings for the whole 20 competitors.
12.23 11.47 11.34 12.87 12.23 11.30 10.51 11.34 11.46 12.34 12.23 11.50 12.01 11.97 12.05 12.87 12.02 12.52 11.37 10.75
Using Stats to find equations from point data eg. 1 Find the equation of the quadratic which passes through the points (1,5), (3,15) and (-5,71).
In the Statistics aplet, choose mode and enter the data. Now change to the SYMB SETUP view and choose the Quadratic data model. Change to the PLOT view using the VIEWS Auto Scale option and press the key. Dont worry that the scale is not good because we dont care about the graph. It only needs to be drawn in order to calculate the fit equation. Finally, change back to the SYMB view and see the equation, pressing if necessary.

We would expect that for an un-biased set of coins the distribution would be binomial. Our hypotheses are: H0: The number of heads is binomially distributed (n=4 & p=0.5) HA: The number of heads is not binomially distributed (n=4 & p=0.5) Begin by entering the data into the first two columns of the Statistics aplet (right). We now need to calculate the expected values based on our null hypothesis. We can do this in the HOME view using the calculation shown right (and below), inserting the results into column C3. 400*COMB(4,C1)*.5^C1*.5^(4-C1) C3 We can now calculate the X2 value using the calculations shown right, which places the individual values into column C4 for inspection if required.
The values can be seen by changing to the NUM view.
In the MATH menu, Probability section, there is a function called UTPC (Upper-Tailed Probability Chi-squared) which will give the critical X2 probability for a supplied number of degrees of freedom and a value. See page 283. In this case we would like the value for a given probability so we will enter the formula into the Solve aplet. Change to the NUM view, enter the known for parameters of D=4 and P=0.05, and 2 the critical X value. Since our value of 16.387 is larger than the critical value of 9.488 we conclude that we must reject the null hypothesis and judge that the observed values do not follow this binomial distribution and hence that the coin is probably biased. This does not say that it is not binomially distributed; just not with those parameters. As can be seen from this example, the Statistics and Solve aplets can be used for simple problems, particularly in cases where working is required to be shown. For more complex problems the Inference aplet provides more powerful tools. Hypothesis test: T-Test 1- A company makes boxes of matches which are supposed to contain an average of 50 matches. A student has counted the contents of 20 boxes and found the results below. Using a 5% confidence level, decide whether the claim is correct. 47, 50, 52, 51, 53, 51, 49, 49, 52, 53, 54, 48, 53, 55, 52, 54, 54, 53, 48, 48 Enter the data into the Statistics aplet then change to the Inference aplet.
Choose the test and the alternate hypothesis in the SYMB view of the Inference aplet. In this case we are working with a single sample and we do not know the standard deviation of the underlying population, so we will use the Student-t test and the alternate hypothesis that the mean of the real underlying population from which the sample was drawn is not equal to that of the proposed underlying population. Change now to the NUM SETUP view to enter the required values. Rather than entering key. If you them by hand, press the have more than one copy of the Statistics aplet (under other names) then you will be presented with a list of aplets from which to choose. Once you have chosen the aplet, you need to nominate the column from which to import the data. The default is column C1, which is what we want in this case, but you can press the key to select from a list of any other columns which contain data. When you have. the correct column, press Enter the population mean 0 = 50, and check that the test level is correct at 0.05 (5%). If you now change to the NUM view you will see the inferential data in numeric form. The test Student-t value is given as 2.392 and the probability of obtaining such a value as 0.0272. The critical t values for this test level of 5% are given as 2.093 and the critical boundaries for the sample mean as 48.86 and 51.14. Sample t value is

Using the formula that

a b = a. b.cos
where a b is the dot product, we can rearrange to obtain: ab cos = a.b
cos = = (3, 4) (4,1) (3, 4). (4,1) + 4 1


32 + 42. 42 + = = 39 09"
On the calculator, the functions DOT and ABS give the dot product and magnitude respectively, when fed with vectors. The hp 39g+ writes vectors as row matrices. For example a = (3, 4) would be written as [3,4].
The calculations are shown in the two screen shots on the right. Remember to change into degree mode first. The list of matrix functions available through the MATH menu is covered starting on page 271. Not all functions are covered, since many of them go far beyond the requirements of the average student at whom this book is aimed.
A list in the hp 39g+ is the same mathematically as a set. As with a set, it is written as numbers separated by commas and enclosed with curly brackets. Eg. {2,5,-2,10,3.75}
The list variables Using the HOME view these lists can be stored in special list variables. There are ten of these L1,L2,.L9,L0. Eg. {2,5,-2,10,3.75} L1
Operations on lists Typing L1 and then ENTER will then retrieve the list. Lists can also be multiplied by a constant and have a constant added to them (see below) If we store another list of the same length into L2, then the two lists can be multiplied together. The resulting list is obtained by multiplying each element in the first list by the matching element in the second list. Many of the normal mathematical functions also work on lists of numbers by performing the operation on each individual element. Lists on the hp 39g+ can contain more than simply numbers. For example, the return value for some matrix functions is a list where each element is a matrix. Elements of a list can be matrices, lists and other things. Statistical columns as lists The column variables C1,C2.C9,C0 in the Statistics aplet are actually list variables attached to their aplet and can be used as extra storage if you need more list variables. The statistical variables have the additional advantage, of course, that they can be graphed in the Statistics aplet and with all the usual statistical analysis measures available. To transfer a list variable to a statistics variable, just store one into the other (see right). As you can see in the second view, the would now give the usual list has been transferred to C1. Pressing statistical measures for the newly created column.

Software for the hp 39g+ At the time of writing the hp 39g+ had only just been released and new software was in the process of being developed. An image of the current Windows version is shown right but the final version may differ in appearance, perhaps significantly. The hp 39g+ is sold with a cable included, unlike the earlier models. This cable lets it link to the USB port on a PC or a Mac. The intention is that the software being developed should run on any platform, including Unix, and will allow the transfer of objects such as aplets, programs or notes.
Once the aplet or note has been transferred to a PC it can be edited using the same ADK software as is used for the hp 38g, hp 39g and hp 40g. The only drawback with this is that the ADK will only run on Windows machines. It may well be that by the time you are reading this there will be new editing software specifically for the hp 39g+ and running on other platforms. Check the Hewlett Packard website for information on this. Information can also be found at The HP HOME view (at
Most explanations & pictures which follow on the next two pages apply to the Windows software. They assume that you are using one of the earlier models (hp 38g, hp 39g or hp 40g) using the serial port for access. More recent software may well be available by the time you read this. See Hewlett Packards web site at
The HPGComm Connectivity Program At this stage I will assume that you have an hp 38g, hp 39g or hp 40g and you have installed the Connectivity software on your computer and have run it. If you have an hp 39g+ then the software will be similar in behavior although the appearance of the screens may be different. See page 181. When you run the software you should see the screen shown above. If you receive the error message right then it means that the default serial port COM1 is unavailable. Press OK and try changing to a different one from the list on the screen. You should read the comments below first. Many computers released since 2002 only have USB ports. This was the reason why the hp 39g+ was altered so that it uses the USB port. If you own one of the earlier models this means that you will be unable to plug in the cable since it requires a COM port. If this is the case then you will need to buy a USB to Serial adaptor. Unfortunately these often cost more than the cable, but it will solve the problem. If you are using the software on a school network then you may need to talk to the network administrator. Some school networks lock out ports for security reasons. Discuss your problem with the network administrator. You can test whether the program is working by performing a screen capture (more on this later). Connect up the cable to the calculator, being firm but careful when plugging it into the top of the calculator so as not to bend the pins. Turn the calculator on and press ON+1. This means press and hold down ON and, while still holding it down, press 1. If the connection is working correctly then a captured image of your calculator screen will appear. If it doesnt then check that you have fresh batteries in the calculator and investigate the use of a different serial port.

When youve finished editing you can use the Connectivity Software to transfer the result back to the calculator.


The design process
An overview Although you can choose to simply create programs which are self sufficient the whole point of working on the hp 39g+ is to use aplets. Hence this chapter will concentrate on the process of creating aplets with enhanced powers provided by attached helper programs. The key to the entire process of creating completely new aplets is the VIEWS menu and its controlling command function SETVIEWS. This function allows you to override the normal behavior of an aplet and superimpose new properties by linking in a set of programs written by you. It is mildly deceptive to call these aplets new, as they derive from one of the standard ones, but the modification of the VIEWS menu means that their final appearance and behavior can be very different to the aplet they derive from. Essentially the process involves the following stages
Choose the parent aplet; Analyze the expected behavior and design the VIEWS menu; Write the helper programs and attach them to the aplet using the SETVIEWS function; Add supporting documentation.
Choosing the parent aplet The first stage in the creation process is to decide which of the standard aplets you wish to make the parent of your new child aplet. For some aplets this may not matter, but for others this can be a very important choice. All the abilities of the parent are inherited by the child so the parent choice is crucial if your aplet requires particular abilities. The most commonly used parent aplets are the Function and Statistics aplets, whereas the Quadratic and Trig Explorers would probably not make good parent aplets, since they are specialized teaching aplets without the flexibility of the others.
If your new aplet is going to be concerned with analyzing data then your best choice for a parent would probably be the Statistics aplet. On the other hand if you were planning to write an aplet to teach the behavior of graphs then the Function or Parametric aplets would obviously be best. All the tools of the parent are available to the child, so consider carefully what tools you require. Calculator Tip When designing aplets you should consider using the ADK as it makes the process far easier. To use the ADK you must have the Connectivity Kit and for models before the hp 39g+ this means buying a cable. We will begin by assuming that you have only the calculator and create our first two aplets entirely on the hp 39g+. We will then look at two more examples using the ADK.

All programming commands can by typed in by hand but, as with the MATH commands, can also be obtained from a menu. Press SHIFT CMDS to display this. In this section I will only be covering those commands which I have used regularly and so regard as important. These may not be the same as the ones you regard as important. If so, consult the manual.

The Aplet commands

These control aspects of the aplet.
CHECK n, UNCHECK n These commands put or remove a check next to the equation whose number is given by n. An interesting bug is actually quite useful: if you UNCHECK 0 then all equations are unchecked instead of only equation 0. Unfortunately the same is not true for the CHECK command. As they say in the trade: Its not a bug, its a feature!.
SELECT <name> This is used to set the active aplet if necessary. If the name has spaces in it then it must be enclosed in quotes. This is not usually required as the program will normally be called by the active aplet anyway. I have only used it with stand-alone programs not attached to an aplet so that they can temporarily borrow abilities belonging to an aplet. However, it could also be used to create an aplet that had two parents if you required it to inherit abilities from both. You could then swap from one parent to the other using this command. This could be quite cumbersome but might add some powerful features.
SETVIEWS <prompt>;<program>;<view number> This absolutely critical command is covered in great detail on page 214.

The Branch commands

IF <test> THEN <true clause> [ELSE <false clause>] END Note the need for a double = sign when comparing equalities. Any number of statements can be placed in the true and false sections. Enclosing brackets are not required.
CASE <if clauses> END: This command removes the need for nested IF commands but is only worth it if you have more than two or three nested IFs. Note that colons are not required for the ENDs which terminate the internal IF clauses.
IFFERR <statements> THEN <statements> [ELSE <statements>] END This can be used to error trap programs where there is a possibility of something going wrong which would normally crash the program, such as evaluating a function at a point for which it is undefined. By trapping the suspect code you can supply an alternative which will perform some other action. This will tend to make your programs more user friendly and is a very good idea!
RUN <program name> This command runs the program named, with execution resuming in the calling program afterwards. If a particular piece of code is used repeatedly then this can be used to reduce memory use by placing the code in a separate program and calling it from different locations. See the SETVIEWS command for information on how to link a program to an aplet when it does not appear on the primary menu. Note that if the name has spaces in it then it must be enclosed in quotes.

If A = then find det(A). 1 5
Ans: det (A) = 2x5-3x(-1) = 13


DOT([vector],[vector]) This function returns the dot product of two vectors. Vectors for this function are written as single row matrices. 3 For example, a = (3, 4) or would be written as [3,4]. 4 See page 175 for a worked example.
EIGENVAL See Users manual EIGENVV See Users manual IDENTMAT(size) This function creates an n x n square matrix which is an identity matrix. For example, IDENTMAT(4) would produce a 4x4 identity matrix for use or storage.
INVERSE(matrix) This function produces the inverse matrix of an n x n square matrix, where possible. A fully worked example of the use of an inverse matrix to solve a 3 by 3 system of equations is given in the chapter on using matrices on the hp 39g+ on page 172 and 288. An error message is given (see right) when the matrix is singular (det. zero). Note: Some people write the inverse matrix as a fraction (one over the determinant) multiplied by a matrix, so as to avoid decimals and fractions within the inverse matrix. The hp 39g+ does not do this. If you want the matrix with the determinant factored out, then evaluate DET(matrix) first, record the fraction and then evaluate DET(matrix) * INVERSE(matrix) to obtain the non-fractional matrix. i.e.

A= A = 2

Remember that the inverse matrix is not just the matrix, but the fraction times the matrix. See also: RREF, DET
LQ(matrix) This function takes an mxn matrix, factors it and returns a list containing three matrices which are (in order): ! an mxn lower trapezoidal matrix ! an nxn orthogonal matrix ! an mxm permutation matrix. If you want to separate these matrices for later use then you should store them into a list variable. For example, if M1 was [[1,2,3],[4,5,6],[7,8,9]] then LQ(M1) L1 would store the three resulting matrices into list variable L1. In the HOME view you could now enter L1(1) M2 to store the first of the result matrices into M2 and so on.
LSQ See Users manual LU See Users manual MAKEMAT See Users manual QR See Users manual RANK See Users manual ROWNORM See Users manual RREF(matrix) This function takes an augmented matrix of size n by n+1 and transforms it into reduced row echelon form, with the final column containing the solution. x 2 y + 3 z = 14 Eg. The system of equations 2 x + y z = x 2 y + 2 z = 14 is written as the augmented matrix
which is then stored as a 3x4 real matrix M1.



ARC 8R 300 LUX CD824 Satellite A60 LC-37AD1E Kiel CD32 240v STR-AV570X DPX501U Kxfc195RU VGN-NS20e S KRC-358RA MB-D100 Explorer-1997 Xr-10x S Nokia 3108 MTR102 Yamaha 8HP AW1251T SD-RT50 CPD-L150 Aopen AK75 F50872 SL54T554EU SHR-4160P SA-AK71 Dmxc-Z7 H8000 PN42C430a1D MAX Nm7 EW-F3000V TI-college RY08570 HT-XA100CT TO PCB Dryer RC435 ACC-52 5100 W Travelmate-4200 Fishfinders 37PFL5522D 05 Dvdr3600 58 DCR412BLS Raider-legend Lights Xpress 5 TM-1000 CI Ld-4W Armada 3500 ZR300 Dishwasher VT 9113 Yashica T B6784N0GB SRU8008 10 300 DN UP-A1 Forerunner 110 AH-HSK600 Series S9600 HT902PB Officejet V45 DVP630 00 VLA424 LBN20518ST KRC-591 RBC30SES Series 8 Xdvd8182 Travelmate 630 LMV1630BB Travelmate C300 SRU5030-86 HS2020 42PF5620 DR-MH300SE FC9171 Image 9 Orbit AF SA1VBE04 GE109MST Polaroid I633 BC-60 Ux-73 CCD-TRV37E EOS 1N Review LVC-S60HP W1986 MS7057 C System LX-M330A Escape-2007 Array YT8330803 DR-90 ECR 5500 EW1044S DVD-P270K


manuel d'instructions, Guide de l'utilisateur | Manual de instrucciones, Instrucciones de uso | Bedienungsanleitung, Bedienungsanleitung | Manual de Instruções, guia do usuário | инструкция | návod na použitie, Užívateľská príručka, návod k použití | bruksanvisningen | instrukcja, podręcznik użytkownika | kullanım kılavuzu, Kullanım | kézikönyv, használati útmutató | manuale di istruzioni, istruzioni d'uso | handleiding, gebruikershandleiding



1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101