Leser: 2
|< 1 2 >| | 17 Einträge, 2 Seiten |
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
#!/usr/bin/perl -w
#
use strict;
my $bis = $ARGV[0];
if (! defined($bis) || $bis < 2) {
print "'$bis' ist keine korrekte Angabe.\nUSAGE: find_prim.pl 2+";
exit
}
my @prim = (2);
L:for (my$az = 3;$az <= $bis;$az += 2) {
foreach (@prim) {
if ($_ > $az/2) { last }
if ($az % $_ == 0) {
next L;
}
}
push(@prim,$az);
}
print "Primzahlen gefunden!\n";
print "Ausgeben ?[j/n] ";
chomp(my$i = <STDIN>);
if (lc($i) eq "j") {
$" = "\t";
print "@prim";
}
1
perl -le '$_=1;(1x$_)!~/^(11+)\1+$/&&print while++$_'
1
2
3
4
5
6
7
8
9
10
11
12
13
14
use strict;
my $max = $ARGV[0] || 100;
my @primes = ( 2 );
for my $num ( 3 .. $max ) {
my $sqrt = sqrt $num;
for my $prime ( @primes ) {
last unless $num % $prime;
push @primes, $num and last if $prime > $sqrt;
}
}
print join ", ", @primes;
print "\n";
1
2
3
4
5
6
7
8
9
10
11
12
use strict;
my $max = 100; # obergrenze bis wohin wir berechnen
my @sieb=(0..$max); # sieb des erestothenes
for my $i (2..($max/2)){
next unless $sieb[$i];
$sieb[$i*$_] = 0 for 2..int $max/$i;
}
# ausgabe
for my $i (2..$max) { print "$sieb[$i] " if $sieb[$i] }
1
2
3
4
5
6
7
8
9
10
11
12
use strict;
my $max = 100; # obergrenze bis wohin wir berechnen
my @sieb = $max; # sieb des erestothenes
for my $i (2..($max/2)){
next if $sieb[$i];
$sieb[$i*$_] = 1 for 2..int $max/$i;
}
# ausgabe
for my $i (2..$max) { print "$i " unless $sieb[$i] }
print join ", ", grep $_, @sieb;
|< 1 2 >| | 17 Einträge, 2 Seiten |