In Perl la funzione rand genera un numero (pseudo)random compreso tra 0 e 1

Quindi:
codice:
 $var1=30;
 $var2=45;
 my $rand = rand * ($var1-$var2) + $var1;

Se pero` il numero deve essere intero:
 $var1=30;
 $var2=45;
 my $rand = int( rand * ($var1-$var2) ) + $var1;
 # nota con questo algoritmo $rand non sara` mai uguale a $var2
Nello script non ho testato che $var1 < $var2: se puo` capitare che $var1 >= $var2 l'algoritmo non funziona, per cui la cosa va testata prima