> 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