Beefy Boxes and Bandwidth Generously Provided by pair Networks
Pathologically Eclectic Rubbish Lister
 
PerlMonks  

Re: (Golf): Sieve of Eratosthenes

by Arguile (Hermit)
on May 19, 2001 at 16:14 UTC ( #81706=note: print w/ replies, xml ) Need Help??

Help for this page

Select Code to Download


  1. or download this
    sub c{($k,@_)=($#_)?@_:2..($n=@_[0]);@_=map{($_%$k)?$_:0}@_;push
    @_,$k;$k<=sqrt($n)?c(grep{!/^0/}@_):@_}
    
  2. or download this
    [arguile@cobalt ~]$ wc -L sieve_golf
        104 sieve_golf
    
  3. or download this
    # display procedure blatantly stolen from Tye
    
    ...
    100: 2 3 5 7 11 13 17 19 23 29 31 37 41 43 47 53 59 61 67 71 73 79 83 
    +89 97
    169: 2 3 5 7 11 13 17 19 23 29 31 37 41 43 47 53 59 61 67 71 73 79 83 
    +89 97 101
    103 107 109 113 127 131 137 139 149 151 157 163 167
    
  4. or download this
    # non-strict
    sub c{$n=pop;@_=2..$n;for($k=2;$k<=sqrt($n);($k)=@_){@_=grep!/^0/,(map
    +{($_%$k)?$_:0}@_),$k}@_}
    
    # strict w/ less named vars
    sub c{pop;@_=2..$_;for(my$k=2;$k<=sqrt;($k)=@_){@_=grep!/^0/,(map{$_%$
    +k?$_:0}@_),$k}@_}
    
  5. or download this
    sub e{pop;@_=2..$_;for(my$k=2;$k<=sqrt;($k)=@_){@_=((grep$_%$k,@_),$k)
    +;}@_}
    

Log In?
Username:
Password:

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

How do I use this? | Other CB clients
Other Users?
Others studying the Monastery: (11)
As of 2015-07-31 20:11 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    The top three priorities of my open tasks are (in descending order of likelihood to be worked on) ...









    Results (281 votes), past polls