Musings and comments about our common interest
We have ordered a box of HP Prime calculators with "BOX" product description. These are special, cardboard boxed HP Primes - much more ecological than the ubiquitous blister.
This is how the box looks like:
We have recently reduced the price of most HP calculators, due to higher volume:
Now prices are more competitive - in particular the HP Prime that is clearly the best calculator there is now!
I have now several HP Prime machines. One for each of my sons (one of them using it at full power for engineering at University of Michigan), and several G1 models. I have just opened a G2 unit and updated it to the latest firmware version (20.12.2021)
I will spend some time with it, trying to learn how to program it in Python. I have take a look at the Finance app (remember that I created several finance programs, among them net present value and internal rate of return), and while in the previous firmware there was a single TVM solver, now there is a wealth of applications, including the Time Value of Money of before, but also many others, including clashflow, breakeven, black&scholes and others. You will see some of my explorations in the coming blogs too. (Note: once you click in finance and select what you want to do, you need to go to the Num part, the third key in the second column of the upper part. Then you see all the fillable fields and calculate the ones you have not filled in.)
Games! The HP Prime is so fast (compared with other calculators) and the HP Basic so optimized that you can actually run games!
As always, you can go to hpcalc.org to see a lot of them.
My preferred games:
I have not used too much lately my Prime. I have been mostly focused on the HP41CL, but the other day I went to the site hpcalc.org , which has a site with software for graphical HP calculators, dating all the way to the 48 series, 39, 40 to the Prime.
There you can see the many programs that exist now. Science, games, engineering, astronomy, you name it.
It is interesting what you can do in games with an interpreted language like basic with modern hardware - you should try, even with the available connection kit from HP and the free PC/Mac calculator
You should take a look at them. You can download them to your computer and from there load them on your Prime
HP has just issued the HP Prime app for iPhone and iPad! It works fast. There are several minor bugs, but that's to expect, since the new appel guidelines imply that the code had to be converted to 64 bit from 32, and that all characters are stored with 32 bits (which allow much more complex character sets).
The app can be found in the App store. Be aware that there was a version for Android since several months ago.
You have here a demo of the app:
Two blog issues ago, we discussed the screen menu and how to make it work. We had to descend to pixel level programming. It is still far from low level, but it is considerably lower than anything done before. This is what “tab menus” entail.
There is a different (and simpler) way of choosing between different alternatives: the CHOOSE() command. Let’s see an example:
The latest HP Prime firmware has introduced several important features, which were lacking in previous releases and that allow to better use the machine resources.
Here we will discuss the drop-down menus and the screen tab menus. This makes communicating with your program much more seamless, GUI-oriented, than the typical question/answer and input field method (that we had to use if we didn’t have access to a Prime SDK (software development kit)
Both need some event-management concepts beforehand. An event is either a key click, or a mouse event. Mouse events can be of several types: click, long click, drag, etc., but we will now concentrate on the simple mouse click, in order to get up and running a short application (this program has been modified from one published by Eddie B. Shore, as many here). We have included some comments so that you can see what’s happening.
We will now focus on the screen tab menus and leave the dropdown menus for tomorrow:
// CAS Custom Menu
// EWS 2014–04–20
LOCAL m,m1,mx,my; //variables containing the mouse event and coordinates
WHILE MOUSE(1)≥0 DO END;
TEXTOUT_P(“Choose the function.”,1,1,4);
TEXTOUT_P(“Here you could put a description of the menu functions below”,1,18,4);
UNTIL SIZE(m1)>0; //Waiting until the Mouse variable is filled with a mouse event
mx:=m1(1); //Getting the coordinates of such event - first X
my:=m1(2); //Then y
IF my≥220 AND my≤239 THEN //Only if the mouse event in in the lower part of the screen
IF mx≥0 AND mx≤51 THEN
IF mx≥53 AND mx≤104 THEN
RETURN; //your code here;
IF mx≥106 AND mx≤157 THEN
RETURN ; //your code here;
IF mx≥159 AND mx≤210 THEN
RETURN; //your code here;
IF mx≥212 AND mx≤263 THEN
RETURN; //your code here;
IF mx≥265 AND mx≤319 THEN
RETURN; //your code here;
My elder son is beginning to enjoy maths! At 12 years old, he is fond of reading, and he has considered several possible future professions, all related with writing and reading: journalist, novel writer, actor, etc. But now that he has enjoyed a good teacher, that makes maths learning fun (basically by giving them homework that is based on investigation: he gives a general problem, and as you solve a question, other questions come that make you think and discover relations and laws by yourself), then he is beginning to enjoy maths.
What he hates (as I did and still do) is the mechanical part of maths. One of the problems of last week was to check which prime numbers below 100 could be expressed as the sum of two squares. While he has learn to check for “prime-ness” by himself, it is tiring to apply it to many numbers. Then I took the opportunity to show him some of the possibilities of the HP Prime CAS mode: the ifactor() function. This function gives the prime factors of an integer; for example, ifactor(60) would return 22*3*5; so, an integer is a prime number if there is a single factor. This speeds a lot the search!
Other concepts that were explained too were gcd and lcm; and it was explained using numbers in its factored form; here he could use the lcm() and gcd() functions once he had apprehended the concepts on the factored numbers, in order to test his results. Then the calculator is really a tool to learn faster, not to cheat on the learning process.
Another alternative that I could have used was the hp50g, or even the hp41cl running any of the Sandmath modules (this is what I use!), but a touch screen is difficult to fight against for a 12 year old kid. The fact that he can download some games written in HP basic helps too. The games are quite lame when compared with what he can get in a simple smartphone; but the beauty of them is that he can enter in the program and try to understand what it is doing; alter number of lives, speed, number of enemies or even their aspect by modifying their grobs; and learn some programming in the process. In that respect, HP basic is much more readable than RPL, and more adequate to write games too.
(For a good load of games for you HP Prime, visit hpcalc.org/prime/games or en.hpprime.club. Some of them are fun enough, and it is surprising how fast can the HP Prime be)
We discussed a couple of days ago about the formula library designed by Eddie B. Shore. I have added several equations on my own - namely all the decibel-watt and decibel-voltage gain calculations, loudspeaker sensitivity; but do you have equations you want to have included?
Also, it is good practice to include the equation in the “print” area, so you know what the equation does before using the solver. Tomorrow I will post the program with this latter change - but also a couple of additional equations too.
I have found that some equations that worked in the HP17bII solver don’t work in the Prime’s. “Bad guess”, the system says. Go figure. The function is not linear by any means - it has a MIN() function, but nevertheless the variable usually searched for is outside of that MIN() function, so there should be no problem. Worthy of more investigation.