None of these cute ways is very accurate in tough cases:

0j15 ": (2*a) %~ (-b) (+,-) %: (b^2) - 4*a*c [ 'a b c' =. 1e_6 1e6 1e_6
0.000000000000000 _1000000000000.000000000000000

But p. does better:

   0j15 ": 1 {:: p. c,b,a
_1000000000000.000000000000000 _0.000000000001000

Henry Rich


On 12/11/2012 6:29 PM, Roger Hui wrote:
There are some cheeky (or is it cheesy?) versions:

(2*a) %~ (-b) (+,-) %: (b^2) - 4*a*c  NB. Kip Murray
(2*a) %~ - b (+,-) %: (b^2) - 4*a*c
(+:a) %~ - b (+,-) %: (*:b) - 4*a*c
-: a %~ - b (+,-) %: (*:b) - 4*a*c



On Tue, Dec 11, 2012 at 11:37 AM, km <k...@math.uh.edu> wrote:

It appears this could be translated into J as the rather cool

(2*a) %~ (-b) (+,-) %: (b^2) - 4*a*c

Sent from my iPad


On Dec 11, 2012, at 12:59 PM, Roger Hui <rogerhui.can...@gmail.com> wrote:

Example from the Iverson and McDonnell *Phrasal
Forms*<http://www.jsoftware.com/papers/fork.htm>paper (which
introduced fork):

(-b)(+,-)√((b*2)-4×a×c)÷2×a

√ is a postulated APL primitive, spelled %: in J.




On Tue, Dec 11, 2012 at 10:49 AM, km <k...@math.uh.edu> wrote:

What is the coolest way of programming the quadratic formula in J?  We
are
finding the roots of polynomial c + x*(b + x*a) without using p. .  I
offer

    roots
3 : 0
'a b c' =. y
q =. %: (b^2) - 4*a*c
(2*a) %~ (-b) + q,-q
)
    roots 1 3 2
_1 _2
    roots 1 0 1
0j1 0j_1
    roots 1 _2 1
1 1

partly as problem definition.  I am looking for cool roots verbs!

Kip Murray

Sent from my iPad

----------------------------------------------------------------------
For information about J forums see http://www.jsoftware.com/forums.htm
----------------------------------------------------------------------
For information about J forums see http://www.jsoftware.com/forums.htm
----------------------------------------------------------------------
For information about J forums see http://www.jsoftware.com/forums.htm

----------------------------------------------------------------------
For information about J forums see http://www.jsoftware.com/forums.htm

----------------------------------------------------------------------
For information about J forums see http://www.jsoftware.com/forums.htm

Reply via email to