Forums Neueste Beiträge
 

Sieb des Eratosthenes

10/01/2012 - 16:40 von borneo_II | Report spam
Hallo NG,
bei meiner Suche nach moeglichen
Perl-Loesungen des beruehmten
"Sieb von Eratosthen" fand ich kein
einziges Script im Internet.
So schrieb ich heute Morgen ein.
Ich hoffe, es kann jemandem nuetzlich sein.


#!/usr/bin/perl
############
##
##
use strict ;
use warnings ;
##
my @array=() ;
$array[0] = 'false' ;
$array[1] = 'true' ;

my $MAX=$ARGV[0]?$ARGV[0]:exit ;


foreach my $true (2..$MAX){ # Bollean Feld im Array anlegen
$array[$true] = 'true'; # [false true true true true$MAX]
};

my $N=@array ;
for ( my $i=2 ; ($i*$i) <= $N ; $i=$i+1 ){
if( $array[$i] eq 'true' ){
for( my $a=0,my $j=($i*$i) ; $j<$N ; $j=($i*$i+$i*$a++) ){
if( $array[$j] eq 'true' ){
$array [$j] = 'false' ;
};
};
};
};

my $count=0;
while ($count < $N ){
if( $array[$count] eq 'true' ){
#print $array[$count]," " ;
print $count," " ;
};

$count=$count+1 ;
};


pub 1024D/6276408C 2009-02-09 "borneo" (borneo) <borneo_II@gmx.de>
 

Lesen sie die antworten

#1 Bjoern Hoehrmann
10/01/2012 - 17:32 | Warnen spam
* Dieter Hoffman wrote in de.comp.lang.perl.misc:
bei meiner Suche nach moeglichen
Perl-Loesungen des beruehmten
"Sieb von Eratosthen" fand ich kein
einziges Script im Internet.



http://rosettacode.org/wiki/Sieve_o...henes#Perl ist da oft ein
guter Anlaufpunkt.
Björn Höhrmann · mailto: · http://bjoern.hoehrmann.de
Am Badedeich 7 · Telefon: +49(0)160/4415681 · http://www.bjoernsworld.de
25899 Dagebüll · PGP Pub. KeyID: 0xA4357E78 · http://www.websitedev.de/

Ähnliche fragen