This is perfect:
   (+: = (#. %~)@(,{.)/.~&.q:)
191561942608236107294793378084303638130997321548169216x
1

Thanks,

-- 
Raul

P.S. Since my pun is actually rather awful, I should probably spoil it:
http://en.wikipedia.org/wiki/Perfect_numbers



On Tue, Jun 10, 2014 at 8:56 PM, Henry Rich <[email protected]> wrote:

> Back to adding powers then:
>
>
>    sdiv5 =: (*//.~ (* %&<: ]) ~.)&.q:
>    sdiv6 =: (#. %~)@(,{.)/.~&.q:
>    (sdiv5 -: sdiv6) !20x
>
> 1
>
> Henry Rich
>
> On 6/10/2014 8:08 PM, Roger Hui wrote:
>
>> Since */ and q: are an inverse pair,
>>
>> sdiv4 =: (*//.~ (* */@:%&:<: ]) ~.)@q:
>> sdiv5 =: (*//.~ (* %&<: ]) ~.)&.q:
>>
>>     (sdiv -: sdiv5) !20x
>> 1
>>
>>
>>
>>
>>
>> On Tue, Jun 10, 2014 at 3:33 PM, Roger Hui <[email protected]>
>> wrote:
>>
>>  sdiv  =: */ @: (((^>:) %&<: [)/) @: (__&q:)
>>> sdiv1 =: */ @ (%~/) @: <: @ ((^>:)/\) @ (__&q:)
>>> sdiv2 =: (((^>:) */@:%&:<: [)/) @: (__&q:)
>>> sdiv3 =: __ ((^>:) */@:%&:<: [)/@q: ]
>>> sdiv4 =: (*//.~ (* */@:%&:<: ]) ~.)@q:
>>>
>>>     (sdiv -: sdiv1) !20x
>>> 1
>>>     (sdiv -: sdiv2) !20x
>>> 1
>>>     (sdiv -: sdiv3) !20x
>>> 1
>>>     (sdiv -: sdiv4) !20x
>>> 1
>>>
>>>
>>>
>>>
>>> On Tue, Jun 10, 2014 at 1:54 PM, Henry Rich <[email protected]>
>>> wrote:
>>>
>>>  Shorter version:
>>>>
>>>> sdiv =. */@(%~/)@:<:@((^ >:)/\)@(__&q:)
>>>>
>>>> spdiv =. (-~ sdiv)
>>>>      spdiv 12
>>>> 16
>>>>
>>>> Henry Rich
>>>> On 6/10/2014 3:09 PM, Henry Rich wrote:
>>>>
>>>>  NB. sum of divisors
>>>>> sdiv =. (*/) @: (((^ >:) %&<: [)/) @: (__&q:)
>>>>> NB. sum of proper divisors
>>>>> spdiv =. (-~ sdiv)
>>>>>      spdiv 12
>>>>> 16
>>>>>
>>>>> Henry Rich
>>>>>
>>>>> On 6/10/2014 1:18 PM, Roger Hui wrote:
>>>>>
>>>>>   From http://www.jsoftware.com/jwiki/Essays/Divisors
>>>>>>
>>>>>>>
>>>>>>>
>>>>>>      div=: /:~ @: , @: > @: (*/&.>/) @: ((^ i.@>:)&.>/) @: (__&q:)
>>>>>>      div 360
>>>>>> 1 2 3 4 5 6 8 9 10 12 15 18 20 24 30 36 40 45 60 72 90 120 180 360
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>> On Tue, Jun 10, 2014 at 10:10 AM, Jon Hough <[email protected]>
>>>>>> wrote:
>>>>>>
>>>>>>   My attempt at making a verb that finds the total of all proper
>>>>>>
>>>>>>> divisors of
>>>>>>> an integer seems to work.
>>>>>>> e.g. if n = 12, the sum of proper divisors is 1 +2 +3+4+6 = 16 (note
>>>>>>> 12 is
>>>>>>> not included)
>>>>>>> This verb is actually equal to the "sigma function" minus n.Wikipedia
>>>>>>> explanation: http://en.wikipedia.org/wiki/Divisor_function
>>>>>>> (I essentially used the equation for sigma_x(n) where x = 1)
>>>>>>> my verb:
>>>>>>>
>>>>>>> sum =.(((*/@:-&1@:{.)%~(*/@:-&1@:({.^(1&+@:,@:}.))))@:(2&p:))-]
>>>>>>> This seems ok, but is not aesthetically pleasing, and seems to be
>>>>>>> very
>>>>>>> bracketty, and given that the mathematical equation is pretty concise
>>>>>>> I am
>>>>>>> surprised the J verb is so long. If anyone knows a nicer way of doing
>>>>>>> this
>>>>>>> I would be grateful to see it.
>>>>>>> Regards.
>>>>>>> ------------------------------------------------------------
>>>>>>> ----------
>>>>>>> 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
>>
>>  ----------------------------------------------------------------------
> 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