Perl Language
casualità
Ricerca…
Osservazioni
Documentazione per la funzione rand () di perl: http://perldoc.perl.org/functions/rand.html
Genera un numero casuale compreso tra 0 e 100
Passa un limite superiore come argomento alla funzione rand ().
Ingresso:
my $upper_limit = 100;
my $random = rand($upper_limit);
print $random . "\n";
Produzione:
Un numero a virgola mobile casuale, come ...
45.8733038119139
Genera un numero intero casuale tra 0 e 9
Trasmetti il tuo numero casuale in virgola mobile come int.
Ingresso:
my $range = 10;
# create random integer as low as 0 and as high as 9
my $random = int(rand($range)); # max value is up to but not equal to $range
print $random . "\n";
Produzione:
Un numero casuale, come ...
0
Vedi anche il perldoc di Rand .
Accedere a un elemento dell'array in modo casuale
my @letters = ( 'a' .. 'z' ); # English ascii-bet
print $letters[ rand @letters ] for 1 .. 5; # prints 5 letters at random
Come funziona
-
rand EXPR
aspetta un valore scalare, quindi@letters
viene valutato in contesto scalare - Un array in contesto scalare restituisce il numero di elementi che contiene (26 in questo caso)
-
rand 26
restituisce un numero frazionario casuale nell'intervallo0 ≤ VALUE < 26
. (Non può mai essere26
) - Gli indici di array sono sempre interi, quindi
$letters[rand @letters]
≡$letters[int rand @letters]
- Gli array Perl sono a zero indice, quindi
$array[rand @array]
restituisce$array[0]
,$array[$#array]
o un elemento nel mezzo
(Lo stesso principio si applica agli hash)
my %colors = ( red => 0xFF0000,
green => 0x00FF00,
blue => 0x0000FF,
);
print ( values %colors )[rand keys %colors];
Modified text is an extract of the original Stack Overflow Documentation
Autorizzato sotto CC BY-SA 3.0
Non affiliato con Stack Overflow