HP 17bii+ Solver as a programming language



#2

OK, I knew that the 17bii+ did not have keystroke programming, but I heard its Solver was terrific. After one day of playing with it, I am really intrigued. I can see that it does allow conditionals (If statement), and looping (sigma function), and assigning values to variables (g and l functions). And I see how you can multiply things by zero so that they are not included in the result of the solver equation, and that's great.

But I am wondering if anyone has published any notes or tips about how to use this Solver as a substitute for keystroke programming. I'm going to keep working at it, but if there are some tips and techniques, I would sure like to see them.

thanks everyone


#3

Hi Don,

If you have the Museum cdrom or DVD, then you must check out the Technical Applications - Step-by-Step Solutions for your HP-27S or HP-19B Calculator. It has a wealth of information on using the solver, a great section on using LET and GET, and many, many examples. While it doesn't really compare it to keystroke programming, it really opened up my eyes on the capabilities of the solver.

Bill

#4

Hello Don,

W. B. Maguire II recommends the "Technical Applications book for the 27S and 19B" on his 2001 article:

http://www.hpmuseum.org/cgi-sys/cgiwrap/hpmuseum/articles.cgi?read=222

It's in the Museum DVD. It is worth reading if your into programming the HP-17BII+.

I tried the HP-17BII for a while last month but I didn't return to the subject.

In the beginning it was easier to write a program in a structured programming language first and from it writing the solver equation. It could be RPL, but I preferred QBASIC in the example below.

Hope this helps,

Gerson.

---------------------------------------------------------

CLS
DEFDBL A-M, O-Z
DEFINT N, S
PI = 4 * ATN(1)
INPUT X
S1 = SGN(X): X = ABS(X)
IF X < 1 THEN
X = X
S2 = 1: K1 = 0
ELSE
X = 1 / X
S2 = -1: K1 = PI / 2
END IF
IF X > (2 - SQR(3)) THEN
X = (X * SQR(3) - 1) / (X + SQR(3))
K2 = PI / 6
ELSE
X = X
K2 = 0
END IF
SUM# = 0
FOR N = 0 TO 12
SUM# = SUM# + (-1) ^ N * X ^ (2 * N + 1) / (2 * N + 1)
NEXT N
ATAN = (K1 + S2 * (K2 + SUM#)) * S1 * 180 / PI
PRINT ATAN

-----------------------------------------------------------

ATAN=

0*(L(S1:SGN(X))+L(X:ABS(X))+

L(X:IF(X<1:
L(S2:1)*X+L(K1:0)
:
0*(L(K1:PI/2)+L(S2:-1))+1/X))+

L(X:IF(X>2-SQRT(3):
0*L(K2:PI/6)+(X*SQRT(3)-1)/(X+SQRT(3))
:
X+L(K2:0))))+

(G(K1)+G(S2)*(SIGMA(N:0:9:1:(-1)^N*X^(2*N+1)/(2*N+1))+G(K2)))*G(S1)*180/PI

-----------------------------------------------------------


#5

Thanks Gerson and Bill. I found that document on my museum DVD. Wow, just what I needed.

thank you thank you thank you

#6

Hi Don --

I think you and I are following the same line of thinking. :-)

I'm putzing around with it too, and finding it intriguing. I downloaded a couple of old HP-25 games and am attempting to rewrite them to run in the Solver. It's quite a challenge.

I'd be interested in seeing anything you get going! Post it!

thanks,
bruce


#7

Will do, Bruce.

The book on the Museum DVD (Technical Applications - Step-by-Step Solutions for your HP-27S or HP-19B, which is on CD1, BTW) mentioned by Bill and Gerson above, is a gold mine. It gives detailed instructions on how to, essentially, turn the solver into a "programming language," if you will. And it has many examples, such as how to find the lcm/gcd and prime factors, something I would not have thought possible on this calc.

Many of the programs I have written on the 12c, for instance, are related to number theory, where I want to get each digit of a number and do something with it, which on the 12c I do by dividing by 10 and getting fract iteratively until I completely deconstruct the number. It looks like this is possible with the 17bii+ using its summation (looping) and get() let() functions.

I know Gerson said he looked into the 17bii and then got away from it. I think I can see why. Programming the solver to do these "unnatural" things is not as straightforward as keystroke programming on the 12c (only members of this forum would refer to keystroke programming as straighforward!). But, like you, I am challenged by something new and different.

Don


#8

About 18 months ago I wrote this for the 17bII+ just to see if it could be done

matrix Inverse using Hp-17BII+
Message #1 Posted by chris dean on 9 Aug 2005, 8:38 a.m.

The LET (L) and GET (G) functions need to be initialised before they are used and the process is well documented on the forum. Another trick to use, is to perform calculations and multiply the result by zero so they are not included in the final calculation.

I found the 17bII+ to be a challenge but being a mathematician I prefer a scientific calculator. I have a HP15C which I consider the best on the block.

#9

Hey Bruce.

This is quick and dirty, but it works.

Sum of digits of a number (up to 12 digits):

sod=sigma(i:1:12:1:mod(n:10)+0xL(n:ip(n/10)))

That last part updates n for the following iteration.

#10

Bruce, I entered the two solver equations from the 27s/19b applications book for finding lcm/gcd and prime factors, and neither would work on the 17bii+. I double-checked to make sure I entered them correctly, but they do not give correct results. So I'm thinking maybe there are some differences in capability between the solver in the 27s/19b and 17bii+. Don't know, but disappointing.


#11

Some of the earlier Hp17Bii+ do not have the LET and GET features properly implemented.

That and the quality of the newer Hp17Bii+ are the main reasons I would NEVER buy the newer Hp17Bii+ as long as the older Hp17Bii is available for sale (from overstock surplus) for the same price.

Yeah, the 32K RAM is a nice plug, but I have 32K on my Hp42s and without any real backup, I don't use it! So 7K of RAM is more than sufficient for this type of calculator.

#12

Don, send it to me privately via email (bruceb-at-fatcity.com) and I'll try it in mine and see if it works. Perhaps there is a revision issue...

thanks,
bruce


Possibly Related Threads...
Thread Author Replies Views Last Post
  hp-prime solver and variable name fabrice48 22 1,951 12-10-2013, 03:25 AM
Last Post: fabrice48
  Solver issue with HP 17BII - different from 19BII Jeff Kearns 13 942 11-28-2013, 02:36 AM
Last Post: Don Shepherd
  HP Prime Triangle solver BruceH 29 2,063 11-28-2013, 12:03 AM
Last Post: Dale Reed
  17BII & 17BII+ Discounted Payback Period Revisited Tom Neudorfl 8 819 11-25-2013, 10:28 AM
Last Post: Don Shepherd
  HP prime: linear solver app Alberto Candel 1 352 11-21-2013, 01:57 AM
Last Post: Michael Carey
  HP Prime: Linear Solver app bug BruceH 0 237 11-15-2013, 06:36 PM
Last Post: BruceH
  HP Prime Solver Variables Issue Anibal Morones Ruelas 8 803 10-19-2013, 09:45 AM
Last Post: Harold A Climer
  Is the Prime a superset of the HP 17bII+ ? vrrr 3 419 10-16-2013, 12:03 PM
Last Post: Michael de Estrada
  HP Prime triangle solver oddity BruceH 0 228 10-13-2013, 09:08 PM
Last Post: BruceH
  Using units in Numeric Solver Harold A Climer 1 288 10-13-2013, 10:44 AM
Last Post: Tim Wessman

Forum Jump: