HP50g simplifing a root
|
10-04-2020, 11:48 PM
(This post was last modified: 10-10-2020 05:23 PM by Albert Chan.)
Post: #11
|
|||
|
|||
RE: HP50g simplifing a root
(10-04-2020 06:05 PM)peacecalc Wrote: I tried two way, the first was to probe every small a from 1 until third root of A. From your example a has to tested from 1 to 670, what a luck, that a = 99. My second approach is to calculate every divisor of A (with DIVI) as a possible candidate for small a. Then I'm calculate the difference A - third power of a. Negative results can be sorted out. The rest is divided by 3*k*a and be square rooted. If the result is a integer and not a algebraic expression would be a solution for smal b. and we get: Based on above description ... not really. You are solving ³√(A ± B√k) = a ± √r r = b²k = (A-a³)/(3a) // note: no B's ! (I might be wrong, your code may have used B somewhere) Here is my lua code, that checked b actually get to B see https://www.hpmuseum.org/forum/thread-15...#pid136957 Code: cbrt = require'mathx'.cbrt lua> A, B, k = 1859814842094, -59687820010, 415 lua> simp_cbrt1(A,B,k) 11589 -145 415 lua> simp_cbrt1(A,B+1,k) -- nothing returned lua> Update: added a ≡ A (mod 3), see https://www.hpmuseum.org/forum/thread-15...#pid137252 Update2: fixed a bug if A is negative Update3: inspired by simp_cbrt2(), calculate b without square root (i.e. not from r = b²k) |
|||
« Next Oldest | Next Newest »
|
User(s) browsing this thread: 1 Guest(s)