Ver Mensaje Individual
  #3 (permalink)  
Antiguo 02/11/2015, 09:37
Avatar de Alexis88
Alexis88
Philosopher
 
Fecha de Ingreso: noviembre-2011
Ubicación: Tacna, Perú
Mensajes: 5.552
Antigüedad: 13 años
Puntos: 977
Respuesta: Función que no me retorna valor a un Array.

Además de lo que te dice molinasergio91, añado que, de esa forma, no vas a obtener un número aleatorio entre el 5 y el 10. Estás restando 10 menos 5 y luego sumas 5, con lo cual obtienes 10 y, por lo tanto, obtendrás un valor entre el 0 y el 9. Tendrías que sumarle 1 a la multiplicación que haces para que los valores estén entre el 1 y el 10.

Para este caso, como se trata de un rango corto, te conviene tener un array con dichos números y tomar un valor aleatorio del mismo.

Código Javascript:
Ver original
  1. function aleatorio(){
  2.     var array = [5, 6, 7, 8, 9, 10],
  3.         posicion = Math.floor(Math.random() * array.length);
  4.     return array[posicion];
  5. }
  6.  
  7. alert(aleatorio()); //Muestra el valor aleatorio tomado del array

Similar a tu algoritmo, se obtiene un elemento en el rango que va del cero al cinco y no hasta el seis, que es el total de elementos del array. Esto nos conviene ya que las posiciones del array van precisamente del cero al cinco, por lo que una vez que obtengamos el número aleatorio, podemos tomar al elemento del array que ocupe dicha posición.

Un saludo
__________________
«Juro por mi vida y mi amor por ella, que jamás viviré para el provecho de otro hombre, ni le pediré a otro hombre que viva para el mío».

Ayn Rand