Thread Primzahlen finden: wie würdet ihr es machen ? (16 answers)
Opened by Matze at 2006-05-15 14:13

Matze
 2006-05-15 14:13
#66101 #66101
User since
2005-08-29
222 Artikel
BenutzerIn
[Homepage] [default_avatar]
Ich hatte mal nichts zu tun und habe ausprobiert einen Primzahlen-
Generator zu programmieren.
Erst habe ich in der Forum-Suche nachgesehen, ob das Thema schon
mal behandelt wurde, aber es gab keine interessanten Ergebnisse.

Ich habe es dann mal so realisiert:
Code: (dl )
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
(Primzahlen bis 100000 in 19 sek.)
würde aber gerne wissen wie ihr es machen würdet.

MfG. Matze
Mit freundlichen Grüßen: Matze

View full thread Primzahlen finden: wie würdet ihr es machen ?