Beefy Boxes and Bandwidth Generously Provided by pair Networks
P is for Practical
 
PerlMonks  

How do I select a random element from an array?

by faq_monk (Initiate)
on Oct 08, 1999 at 00:20 UTC ( #617=perlfaq nodetype: print w/replies, xml ) Need Help??

Current Perl documentation can be found at perldoc.perl.org.

Here is our local, out-dated (pre-5.6) version:

Use the rand() function (see rand):

    # at the top of the program:
    srand;                      # not needed for 5.004 and later

    # then later on
    $index   = rand @array;
    $element = $array[$index];

Make sure you only call srand once per program, if then. If you are calling it more than once (such as before each call to rand), you're almost certainly doing something wrong.

Log In?
Username:
Password:

What's my password?
Create A New User
Chatterbox?
[marto]: Hey Corion, how are things?
[Corion]: Fine! It's amazing how productive I can be with a 3hour daily workload removed :)
[Corion]: My to-do emails level is at a 12-months-low of 21 , from 36 last week ;)
[marto]: I'm recovering from a bad day yesterday, on most counts :P
[Corion]: Also , I made great progress in actually writing the automation script that will run large parts of the 3hour workload now, largely by discussing what error conditions need to be handled by manual intervention and reducing these :)
[Corion]: marto: Ow! What was so bad about yesterday?

How do I use this? | Other CB clients
Other Users?
Others imbibing at the Monastery: (9)
As of 2018-05-24 07:24 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?
    Notices?