(35s 42s/DM42 50G) Quadratic formula

05242020, 09:54 PM
(This post was last modified: 05042023 09:13 PM by mchris.)
Post: #1




(35s 42s/DM42 50G) Quadratic formula
Probably someone has done it before, but...
Inspired by a HP41C program I found for the quadratic formula that uses only the 4 level stack, no INPUTs, no extra registers, I thought maybe I could do something similar with the HP35s, despite that it doesn't have the register arithmetic with the stack registers. The program uses the equivalent formula (b/2a)±SQRT((b/2a)^2(c/a)). The fact there is only 2 terms makes it easier. I don't think it could be done with the (b±SQRT(b^24ac))/2a formula. We press a ENTER b ENTER c XEQ Q and the 2 solutions, real or complex returned in X and Y registers. No INPUTs, no extra registers, just the stack, in just 29 steps. Code: Q001 LBL Q 

05252020, 11:23 AM
Post: #2




RE: (HP35s) Quadratic formula
I tried this examples from HP 25 Application Program Manual:
ax2 + bx + c = 0 Examples 1 . X2 + X  6 = 0 2. 3 X2 + 2x 1 = 0 3. 2X2  3x + 5 = 0 Solution 1. D = 6.25 Xl = 3.00 X2 = 2.00 2. D = 0.44 Xl = 1.00 X2 = 0.33 3. D = 1.94 Xl , X2 = 0.75 ± 1.39 i For the first case with your program: x1= 3, x2= 3; the rest INVALID DATA The program looks nice, but some corrections have to be made. Pedro 

05252020, 03:52 PM
Post: #3




RE: (HP35s) Quadratic formula
I tried the examples you mentioned and I get the correct answers. Did you key the program correctly?


05252020, 04:19 PM
(This post was last modified: 05252020 04:25 PM by PedroLeiva.)
Post: #4




RE: (HP35s) Quadratic formula
(05252020 03:52 PM)mchris Wrote: I tried the examples you mentioned and I get the correct answers. Did you key the program correctly?Yes I did. Only one doubt, in steps 04 and 26, RDN code I got it by pressing blue shift (right arrow) and key coordinate 1,4 (first colum, forth row) > E, wich shows in blue RND intaed of RDN. Maybe I am confused. Please confirm. Another option is to send an emulator file. Pedro 

05252020, 04:23 PM
Post: #5




RE: (HP35s) Quadratic formula  
05252020, 04:25 PM
Post: #6




RE: (HP35s) Quadratic formula
(05252020 04:19 PM)PedroLeiva Wrote:(05252020 03:52 PM)mchris Wrote: I tried the examples you mentioned and I get the correct answers. Did you key the program correctly?Yes I did. Only one doubt, in steps 04 and 26, RDN code I got it by pressing blue shift (right arrow) and key coordinate 1,4 (first colum, forth row) > E, wich shows in blue RND intaed of RDN. Maybe I am confused. Please confirm. Pedro RDN stands for Register Down: R↓ RUP stands for Register Up: R↑ 

05252020, 04:49 PM
(This post was last modified: 05262020 12:11 PM by PedroLeiva.)
Post: #7




RE: (HP35s) Quadratic formula
(05252020 04:25 PM)pinkman Wrote:Great, TYVM. It Works perfect now. Pedro(05252020 04:19 PM)PedroLeiva Wrote: Yes I did. Only one doubt, in steps 04 and 26, RDN code I got it by pressing blue shift (right arrow) and key coordinate 1,4 (first colum, forth row) > E, wich shows in blue RND intaed of RDN. Maybe I am confused. Please confirm. Pedro 

05042023, 09:02 PM
Post: #8




RE: (35s 42s 50g) Quadratic formula
The same logic can be ported to 42s/DM42 and 50g.
42s/DM42 Code: 01▸LBL "QE" Code: « 3 PICK / 3 ROLLD SWAP / 2 / NEG DUP SQ ROT – √ DUP2 + EVAL 3 ROLLD – EVAL » 

05042023, 09:59 PM
(This post was last modified: 05042023 09:59 PM by Joe Horn.)
Post: #9




RE: (35s 42s/DM42 50G) Quadratic formula
This is "cheating" but the 50g can do it in two steps:
<< →V3 PROOT >> BYTES: 18 #75EEh <0ɸ0> Joe 

05042023, 10:57 PM
Post: #10




RE: (35s 42s/DM42 50G) Quadratic formula
(05042023 09:02 PM)mchris Wrote: 50g On the HP 49 and HP 50, 3 PICK can be replaced by PICK3, and 3 ROLLD can be replaced by UNROT. Each of those changes saves 2.5 bytes and a small amount of time. Also, on the 28 and 48, ROT ROT is faster than 3 ROLLD. This only matters inside a loop but it may be useful to know. 

05052023, 07:37 AM
Post: #11




RE: (35s 42s/DM42 50G) Quadratic formula
Thanks, I'm beginner RPL user.


« Next Oldest  Next Newest »

User(s) browsing this thread: