
08/06/2008, 06:15
|
 | | | Fecha de Ingreso: junio-2008 Ubicación: Perdido en tierras Quijotescas
Mensajes: 189
Antigüedad: 16 años, 10 meses Puntos: 7 | |
Respuesta: Aleatorios Buenas, ya tienes una respuesta, pero a ver si te interesa esto:
Realmente, el ordenador es técnicamente incapaz de generar números aleatorios de por sí, y la explicación es un poco larga como para apuntarla aquí. Lo que realmente te devuelve cuando le pides Rnd, u otra función en el lenguaje que sea, es lo que se denomina un "número pseudoaleatorio"; tiene algo de azar, pero no totalmente. Si buscas información sobre criptografía, puedes averiguar mucho sobre esto.
La solución es tan sencilla como hacer la llamada
Randomize Timer
antes de pedir un número aleatorio. Realmente, basta con que invoques esa instrucción en el evento Load o en Sub Main, y lo que hace es tomar la semilla aleatoria de la hora del sistema, por lo que salvo que ejecutes la instrucción en días diferentes y a la misma hora exacta, los valores devueltos por Rnd siempre serán diferentes. También puedes buscar o añadir variables más o menos impredecibles, como un cálculo con las coordenadas del ratón, el handle de la ventana del programa o lo que se te ocurra, pero por lo general, con Timer es suficiente. |