Por
Saiyine
el 2005-09-18 23:28:00 - Secciones: - Enlace permanente: 558
Para un experimento, necesitaba una lista bastante larga de números primos, lo que me indujo a hacer este programita en perl.
El script es realmente simple, y practicamente no usé ningún truco para acelerar la generación de primos salvo el empezar con una lista de ocho o nueve precalculados.
Los números generados son guardados en un txt que es reaprovechado la siguiente vez que se ejecuta el programa, que por cierto acepta como parametro cuantos primos queremos calcular.
Y sin más preambulos, el código:
#!/usr/bin/perl if (-e "primos.txt") { open (f1,"primos.txt"); @leido=<f1>; close(f1); foreach $l ( @leido ) { if ($l > 0) { push (@primos, $l*1); } } } else { @primos = (2,3,5,7,11,13,17,19); } $a = pop (@primos); push (@primos, $a); if ( $ARGV[0]==0 ) { $tope=1; } else { $tope=$ARGV[0]; } $cuenta=0; do { $primo = "Si"; foreach $p (@primos) { if ( $a % $p == 0 ) { $primo = "No"; break; } } if ( $primo eq "Si" ) { $cuenta++; print "[ $a ] $cuenta\n"; push (@primos, $a); } $a=$a+1; } while ($cuenta<$tope); open (f1,">primos.txt"); foreach $i ( @primos ) { print f1 "$i\n"; } close(f1);
Otras entradas de la web que podrian interesarte:
. . .
. . .
. . .

. . .
. . .
Varios ejemplos de lo que buscaban visitantes recientes:
. . .
Página web ©2001-2010 Saiyine generada en s, con 4639756 visitas en total, hoy (de un total de 0 previstas).
. . .