Numbers of divisors below, not the divisors themselves... the thread had split! 
I was attempting to comment on Hauke Rehr’s post.
M

Sent from my iPad

> On 24 Apr 2020, at 23:52, 'Jon' via Programming <[email protected]> 
> wrote:
> 
> This is missing a few divisors. It seems Skip's original method would be 
> difficult to beat. It's O(n) in time and space. You could improve space 
> complexity by doing a simple loop, but as far as I can see there are no 
> shortcuts, and the best way is to just "brute force" it.
> 
> ⁣Sent from BlueMail ​
> 
>> On Apr 25, 2020, 5:35 AM, at 5:35 AM, 'Mike Day' via Programming 
>> <[email protected]> wrote:
>> I think this is near to the approved way:
>> 
>>  (*/"1@:>:@(_& q:))24 360 4711
>> 8 24 4
>> 
>> Mike
>> 
>> Sent from my iPad
>> 
>>> On 24 Apr 2020, at 21:13, Hauke Rehr <[email protected]> wrote:
>>> 
>>> I now have an answer for the number of results:
>>> 
>>>  */ >: +/"1 (=/~ ~.) q: 4711
>>> 4
>>>  */ >: +/"1 (=/~ ~.) q: 42
>>> 8
>>> 
>>> I hesitate using =/~ (it’s actually deprecated)
>>> but I wouldn’t know a better way in this case
>>> 
>>> 
>>>> Am 24.04.20 um 21:09 schrieb Skip Cave:
>>>> I have used the wrong terminology. I want to find all the positive
>> integer
>>>> *divisors* of an integer n (not just primes) which includes 1 and
>> the
>>>> integer.
>>>> Here's a brute force verb I wrote:
>>>> div=:3 : 'a#~0=(a=.1+i.y)|y'
>>>> Test it:
>>>> div each 40+i.5
>>>> │1 2 4 5 8 10 20 40│1 41│1 2 3 6 7 14 21 42│1 43│1 2 4 11 22 44│
>>>> However my div verb is inefficient, slow, and runs out of memory
>> quickly on
>>>> larger integers. Is there a way to take advantage of J's prime
>> factoring
>>>> verb q: to more efficiently find and/or count *all* positive
>> divisors (not
>>>> just primes) of a large (>1e7) integers?
>>>> Skip
>>>> Skip Cave
>>>> Cave Consulting LLC
>>>> Skip Cave
>>>> Cave Consulting LLC
>>>>> On Fri, Apr 24, 2020 at 1:31 PM Roger Hui
>> <[email protected]> wrote:
>>>>> See https://code.jsoftware.com/wiki/Essays/Factorings
>>>>> 
>>>>> 
>>>>> 
>>>>> On Fri, Apr 24, 2020 at 11:29 AM Skip Cave
>> <[email protected]>
>>>>> wrote:
>>>>> 
>>>>>> I want to find all the integer factors of a positive integer,
>>>>>> which includes 1 and the integer.
>>>>>> Here's a brute force verb I wrote:
>>>>>> fac=:3 : 'a#~0=(a=.1+i.y)|y'
>>>>>> 
>>>>>> Test it:
>>>>>> 
>>>>>> fac each 40+i.5
>>>>>> 
>>>>>> │1 2 4 5 8 10 20 40│1 41│1 2 3 6 7 14 21 42│1 43│1 2 4 11 22 44│
>>>>>> 
>>>>>> 
>>>>>> However my fac verb is inefficient, slow, and runs out of memory
>> quickly
>>>>> on
>>>>>> larger integers. Is there a way to take advantage of J's prime
>> factoring
>>>>>> verb q: to more efficiently find and/or count *all* positive
>> factors (not
>>>>>> just primes) of a large (>1e7) integers?
>>>>>> 
>>>>>> 
>>>>>> Skip
>>>>>> 
>>>>>> 
>>>>>> Skip Cave
>>>>>> Cave Consulting LLC
>>>>>> 
>> ----------------------------------------------------------------------
>>>>>> 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
>>> 
>>> -- 
>>> ----------------------
>>> mail written using NEO
>>> neo-layout.org
>>> 
>>> 
>> ----------------------------------------------------------------------
>>> 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