Perl Language
Willekeurigheid
Zoeken…
Opmerkingen
Documentatie voor de functie rand () van perl: http://perldoc.perl.org/functions/rand.html
Genereer een willekeurig getal tussen 0 en 100
Geef een bovenlimiet als argument door aan de functie rand ().
Invoer:
my $upper_limit = 100;
my $random = rand($upper_limit);
print $random . "\n";
Output:
Een willekeurig getal met drijvende komma, zoals ...
45.8733038119139
Genereer een willekeurig geheel getal tussen 0 en 9
Cast je willekeurige drijvende-kommagetal als een int.
Invoer:
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";
Output:
Een willekeurig geheel getal, zoals ...
0
Zie ook de perldoc voor rand .
Willekeurig toegang krijgen tot een array-element
my @letters = ( 'a' .. 'z' ); # English ascii-bet
print $letters[ rand @letters ] for 1 .. 5; # prints 5 letters at random
Hoe het werkt
-
rand EXPR
verwacht een scalaire waarde, dus@letters
worden geëvalueerd in scalaire context - Een array in scalaire context retourneert het aantal elementen dat het bevat (26 in dit geval)
-
rand 26
retourneert een willekeurig breukgetal in het interval0 ≤ VALUE < 26
. (Het kan nooit26
) -
$letters[rand @letters]
zijn altijd gehele getallen, dus$letters[rand @letters]
≡$letters[int rand @letters]
- Perl-arrays zijn nul-geïndexeerd, dus
$array[rand @array]
retourneert$array[0]
,$array[$#array]
of een tussenliggend element
(Hetzelfde principe is van toepassing op hashes)
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
Licentie onder CC BY-SA 3.0
Niet aangesloten bij Stack Overflow