> 3 5 (0 +./ .= (|/ i.)) 20

the ".=" is hard to read.  Its equivalent to ". =" or in this case



3 5 (0 +./@:= (|/ i.)) 20

----- Original Message -----
From: Geoff Canyon <gcan...@gmail.com>
To: programm...@jsoftware.com
Sent: Thursday, May 5, 2016 5:54 PM
Subject: Re: [Jprogramming] Project Euler 1

So there are a few learning opportunities here -- euphemism for things I
don't understand ;-)

I get how adding 0 = transforms the modulo results into a 1 for "divisible"
and 0 for "not divisible":

      3 5 (0 = (|/ i.)) 20

1 0 0 1 0 0 1 0 0 1 0 0 1 0 0 1 0 0 1 0

1 0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0


But I'm not seeing how this combines those results with an OR:


3 5 (0 +./ .= (|/ i.)) 20

1 0 0 1 0 1 1 0 0 1 1 0 1 0 0 1 0 0 1 0


Maybe I'm just not seeing how the forks/hooks resolve themselves? I seem to
recall there was a command to get J to box a command to show how that flow
works, but I don't remember it. Or maybe that's not it at all and I'm just
confused.


thx


gc

On Wed, May 4, 2016 at 11:35 PM, Raul Miller <rauldmil...@gmail.com> wrote:

> On Wed, May 4, 2016 at 10:35 PM, Geoff Canyon <gcan...@gmail.com> wrote:
> > So I tried to write code to solve the general case of Project Euler
> problem
> > 1. The problem given is to find the sum of all the positive integers less
> > than 1000 that are divisible by 3 or 5. Obviously the specific case is
> > highly optimizable. But I wanted to solve the general, with any number of
> > divisors and any upper limit.
>
> ...
> > Here's the code. As always, I suck at J, so improvements/suggestions are
> > welcome.
> >
> > pe1 =: +/@(([:i.]) * 1&-@(0&i.)@*/"1@|:@(|"0 1 i.))
>
> Maybe:
>   pe1=: [:+/@I. 0 +./ .= (|/ i.)
>
> ?
>
> Assuming email anti-spam bots do not eat my line for including an @
> character. Maybe, instead:
>
>   pe1=: [:+/ [:I. 0 +./ .= (|/ i.)
>
> ...
>
> --
> Raul
> ----------------------------------------------------------------------
> 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