Beefy Boxes and Bandwidth Generously Provided by pair Networks
Clear questions and runnable code
get the best and fastest answer
 
PerlMonks  

Re: Spiraling integers

by ambrus (Abbot)
on Aug 28, 2005 at 09:50 UTC ( #487238=note: print w/replies, xml ) Need Help??


in reply to Spiraling integers

to write a program (in any language)

Would it offend the dear monks if I posted a program in J then? I hope no. (Even though you say any language, that's for the original question, ant this is perlmonks.)

Here's the program:

spiral =: 3 : 0 >: (,~ y.) $ (i. *: y.) i.~ /: ,/ (-@>.&| , -@{:@*.@(1j_1&*)@j.)"0/~ ( +i. y.) - -:<: y. ) 2!:55[0[ 1!:2&2 spiral 5".>{: ARGV

To run it,

  1. first get a J User Licence by filling this form;
  2. download J;
  3. set it up by the instructions in readme.txt (comes with the download);
  4. save the above code as spiral.ijs (don't break the long line);
  5. and run jconsole spiral.ijs 5 (5 is an integer giving the spiral size, defaults to 5).
(You can of course skip the first four steps if you have already done them.)

Update 2007 dec 7: better definition for the spiral function is

spiral =: - ]\ i.@:*: [`]`[} [: \: [: ,/ [: (>.&| , 12&o.@(1j_1&*)@j.) +"0/~ i. - -:@:<:

Replies are listed 'Best First'.
Re^2: Spiraling integers
by Anonymous Monk on Nov 07, 2008 at 18:27 UTC
    You don't to get a user license any more to use J...

Log In?
Username:
Password:

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://487238]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others making s'mores by the fire in the courtyard of the Monastery: (5)
As of 2019-10-23 00:27 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?
    Notices?