Home Hardware Networking Programmazione Software Domanda Sistemi
Conoscenza Informatica >> Programmazione >> Perl Programming >> .

Come calcolare fattori primi di un numero intero in Perl

Perl non dispone di una funzione predefinita che consente di ottenere i fattori primi di un numero intero , ma utilizzando la ricorsione e la base - 10 numeri , si può scrivere la propria funzione per realizzare il compito . Con la funzione " mappa " consente di eseguire in modo ricorsivo un blocco di codice in un elenco . Usando il numero intero come l' elenco, è possibile estrarre ripetutamente fattori primi da esso per farli tutti , quindi utilizzare la funzione " sprintf " per visualizzarli sullo schermo separati da uno spazio per renderli più facili da leggere . Istruzioni
1

Aprire un file di programma Perl . Digitare il seguente codice :

sub fattore {

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

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

stampa " I fattori primi di @ _ [ $ i ] sono : " ;

cartina stampa { sprintf ( "% s" , lunghezza ) , ""} getNext ( 1x $ num) ;

print " \\ n"; }


}

Questo crea una semplice funzione chiamata " fattore " che prende qualsiasi numero di parametri e stampa i fattori primi , separati da uno spazio. Si chiama la funzione " getNext " per calcolare effettivamente i fattori primi
2

digitare il seguente codice : .

Sub getNext {

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

ritorno @ _ ;

} else {

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

}

}

Questo crea la funzione " getNext " , che verifica se un numero intero è un numero primo . In caso affermativo , restituisce il numero alla funzione "fattore " di essere stampati . In caso contrario , si richiama sé stesso ricorsivamente per trovare il prossimo primo basso
3

Digitare il seguente codice:
fattore

( 45) ;
fattore

. ( 3300,24 ) ;

Queste due linee di testare la funzione per ottenere fattori primi . La prima linea ha un solo parametro , quindi mostra solo una riga . Esso stampa 3 , 3 e 5 come fattori primi . La riga successiva ottiene i fattori principali per due numeri . Per il 3300 , stampa 2 , 2 , 3 , 5 , 5 e 11 , e per il 24 , stampa 2 , 2 , 2 e 3 .
4

Salvare il programma Perl .


 

Programmazione © www.354353.com