While we do need some focus to get anything done, sometimes it is good
to have a few more options than strictly necessary. (The value of this
really depends on the interests of the student.)

Thanks,

-- 
Raul


On Mon, Nov 18, 2013 at 11:03 AM, Linda Alvord <[email protected]> wrote:
>     RMS=: (+/ % #)&.:*:
>
>    5!:4 <'RMS'
>              -- / --- +
>         -----+- %
> -- &.: -+    L- #
>         L- *:
>
>    rms=:[:%:[:(+/%#)*:
>
>    5!:4 <'rms'
>   -- [:
>   +- %:
> --+    -- [:
>   │    │    -- / --- +
>   L----+----+- %
>        │    L- #
>        L- *:
>
>   rms  has a nice tree, and fewer concepts are required.
>
> Linda
>
>
> -----Original Message-----
> From: [email protected]
> [mailto:[email protected]] On Behalf Of Don Kelly
> Sent: Monday, November 18, 2013 2:06 AM
> To: [email protected]
> Subject: Re: [Jprogramming] Novice problem
>
> You sent an answer to my question before I asked it!  Thanks- I suspected
> but didn't know  that this was it.
>
> I think that I will stay with the earlier definition:
>
> rms=:[:%:[:(+/%#)*:
> which, while it does have brackets is somewhat more readable for my present
> state of understanding. Yours is shorter and I expect it would be faster.
> Now all of you have given me enough to digest for now.
> Don
>
> On 17/11/2013 7:23 AM, Raul Miller wrote:
>> Here's another definition of rms
>>
>>     Rms=: +/@:*: %:@% #
>>     Rms 1 2 1 2
>> 1.58114
>>
>> Explanation:
>>
>> We do not need to square the numbers in the argument to #, we only
>> need to square them in the argument to +/
>>
>> We only need the square root on the result of %
>>
>> Makes sense?
>>
>> Also, here's a partial explanation for the (+/%#)&.:*: definition of
>> RMS
>>
>> &.: means "under" much like &. except that the derived verb has
>> infinite rank - the verb on the left gets the entire array which
>> resulted from the verb on the right, regardless of the rank of the
>> verb on the right. In other words, it is equivalent to (+/ % #) &.
>> (*:"_)  In other words: square the numbers, add them up, divide by
>> their sum, then do the inverse of squaring on the result.
>>
>> Thanks,
>>
>
> ----------------------------------------------------------------------
> 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