Este belo script abaixo

É o seguinte: as vezes quando mando rodar o script ele roda perfeitamente, mas as vezes para no meio e nao faz mais nada...
Esse script gera números randômicos num intervalo determinado em $num, a única coisa diferente neste script é que a sequencia nao pode ter nenhum repetido, ou seja num intervalo de 1 a 10 ele nao irá repetir nenhuma vez um determinado nº.
Pra fazer o teste eu coloquei esse FOR de 0 a 10, e tem horas que o script roda blzinha, mas tem horas que ele para no meio e nao acontece mais nada, mas se eu for olhar o processo perl.exe o mesmo etá consumindo 99% do processamento e fica rodando sem parar...
Alguém poderia ver se há algum erro neste script?
Alguém teria um script parecido?
OBS: estou imprimindo o resultado assim:
Ex:
9
7
6
8
5
4
3
1
2
10
1 -> Esse é a variável $a (variável do FOR, só pra ver quantas vezes o sistema rodou...)
Desde já agradeço
[ ]'s
Fredera
#!perl.exe for ($a=0; $a<10; $a++) { $num=10; &Rand_Rep($num); sub Rand_Rep(){ $i=1; while ($i<=$num){ $rand_temp=rand($num+1); ($n_rand)=split(/\./,$rand_temp); if ($n_rand > 0){ $aux=0; for ($x=1;$x<=$i;$x++){ if ($n_rand == $nrand[$x]){ $aux=1; } } if ($aux == 0){ $nrand[$i]=$n_rand; $i++; } } } foreach $nrand(@nrand) { print $nrand."\n"; } print "\n".$a."\n" } }
Edição feita por: Fredera, 01/06/2004, 17:39.