Perl - RAND

 
Vista:

RAND

Publicado por Jose Mari (7 intervenciones) el 17/05/2001 13:39:32
Estoy empezando con Perl sin nadie en quien apoyarme, y con los tutoriales conseguidos no consigo quitarme esta pequeña duda. El caso es que con la funcion RAND logro que el ordenador coja un numero al azar, pero resulta que ese numero al azar no es entero, por ejemplo, si le digo que coja entre el 1 y el 10, elije el 7,999399.
Alguien me podria decir como hacer para que solo coja numeros enteros??? Envienme una respuesta por favor, gracias
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:RAND

Publicado por jh (20 intervenciones) el 19/05/2001 19:26:28
Creo que se entiende:

@chars = ( "A" .. "Z", 0 .. 9); # Conjunto de aleatorios
$aleatorio = join("", @chars[ map { rand @chars } ( 1 .. 10 ) ]); # valor de 10
print $aleatorio;
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:RAND

Publicado por Jose M (7 intervenciones) el 21/05/2001 08:49:22
Gracias por la ayuda, aun soy un novatillo y no entiendo muy bien todo, pero me exprimire el cerebro por entender tu respuesta por completo, mas o menos lo veo.
Un saludo
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:RAND

Publicado por No es correcto (7 intervenciones) el 21/05/2001 12:59:16
La forma en que me has dado tu ejemplo, lo que te presenta el ejercicio es: un numero alfanumerico de diez digitos con sus numeros yletras al azar.
Le he quitado los valores de A..Z y me presenta un numero aleatorio de 10 digitos.

Si puedes, en su momento me das alguna otra posible opcion.

Gracias aun asi
Un saludo
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:RAND

Publicado por osi (44 intervenciones) el 23/05/2001 07:48:12
un ejemplo simple con un dado.
while(1 != 2){
$dado = int (rand 6) + 1;
print "$dado\n";
sleep 1;
}

fijate la línea 2 ( $dado = int (rand 6) + 1; )
si queres conseguir un entero entre el 1 y el 10 podes hacerlo asi:
$aleatorio = int (rand 10) + 1;
la función int convierte un decimal a entero
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:RAND

Publicado por GRACIAS (7 intervenciones) el 23/05/2001 08:58:58
Me has dado justo la solucion que necesitaba. Perfectamente entendido.
Muchas gracias
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar