Come ottenere un elemento di un array in Perl

Il compito. In programma nel linguaggio di programmazione Perl un array con i valori. È necessario ottenere un elemento di questo array.

La soluzione a questo problema in Perl è molto bella ed elegante. Viene utilizzata la funzione rand() per ottenere un casuale indice un elemento.

Ecco un esempio di codice. C'è una matrice in cui l'ideale di tale matrice con i colori. Il codice consente di visualizzare sullo schermo colore casuale di tale matrice.

▶ Run
#!/usr/bin/perl

my @colors = ('red', 'green', 'blue', 'magenta', 'white');

my $color = $colors[ rand @colors ];

print $color;

Come funziona. Un array di @colors. In esso ci sono 5elementi. Per accedere al primo elemento necessario scrivere $colors[0], all'ultimo — $colors[4].

In questo esempio rand @colors è comunque che rand(5). Con questo usare un array restituisce il numero di elementi nella matrice. (scalare il contesto).

rand @colors restituisce il numero di 0 (compreso) fino al numero 5 (ma non compreso questo numero). Ad esempio, il risultato di questa operazione può essere un numero 3.70744988833152.

E l'ultimo passo. Il risultato rand @colors viene utilizzato come indice la matrice. Cioè si scopre qualcosa di simile $colors[ 3.70744988833152 ]. Questa record restituisce esattamente lo stesso elemento dell'array e record $colors[3], cioè il quarto elemento — riga 'magenta'.

Temi correlati

Altri articoli