“Conocimientos Programación>Perl Programming

Cómo calcular los factores primos de un número entero en Perl

2014/1/22
Perl no tiene una función predefinida que le permite obtener los factores primos de un entero, pero el uso de la recursividad y la base - 10 números, puede escribir su propia función para lograr la tarea. Con la función " mapa " le permite realizar de forma recursiva un bloque de código en una lista . Al utilizar el número entero como la lista , puede extraer repetidamente factores primos de ella para llegar a todos ellos , a continuación, utilice la función " sprintf " para mostrar en la pantalla separadas por un espacio para que sean más fáciles de leer . Instrucciones
1

Abra un archivo de programa Perl. Escriba el siguiente código:

sub factor de

{ for ($ i = 0 ; $ i <@ _ ; $ i + + ) {

$ num = @ _ [ ,"$ i ] ;

print " Los factores primos de @ _ [ $ i ] son ​​:";

estampado plano { sprintf ("% s ", longitud ) : " "} getNext ( 1x $ num) ;

print "\\ n"; }


}

Esto crea una función simple llamado "factor" que toma cualquier número de parámetros e imprime los factores primos , cada uno separado por un espacio. Se llama a la función " getNext " para calcular realmente los factores primos
2

Escriba el siguiente código: .

Sub getNext

{ if ($ _ [ 0 !] ~ /^ ( ? .. +) \\ 1 + $ /) {

regreso @ _ ;

} else {

regreso mapa getNext ($ _) , ( "$ 1 ", $ _ [ 0 ] = ~ s /$ 1/1/g , $ _ [ 0 ] ) [ 0 , -1 ] ;


} }

Esto crea la función " getNext ", que comprueba si un número entero es un número primo . Si es así , devuelve el número de la función "factor" que desea imprimir. Si no, se llama a sí misma recursivamente para encontrar el próximo primer bajo
3

Escriba el siguiente código:
factor de

( 45 ) ;
factor de

. ( 3300,24 ) ;

Estas dos líneas de probar la función para obtener factores primos. La primera línea sólo tiene un parámetro, por lo que sólo muestra una línea. Se imprime 3 , 3 y 5 como factores primos. La línea siguiente obtiene los factores primos de dos números. Para 3300 , se imprime 2 , 2 , 3 , 5 , 5 y 11, y de 24 , imprime 2 , 2 , 2 y 3 .
4

Guardar el programa Perl.


Perl Programming
Cómo leer archivos CSV en Perl
Perl Tutorial para la impresión y HTML Inline HTML Frames
Cómo actualizar pera con Fedora
Cómo encontrar la longitud de un array en Perl
Cómo crear un array en Perl
Cómo determinar cuántos elementos hay en una matriz usando Perl
¿Cómo hago para que Perl counter script para recolectar direcciones IP
Cómo quitar el espacio en blanco en Perl Regex
Conocimientos Informáticos © http://www.ordenador.online