Randomize y Rnd

Iniciado por nhaalclkiemr, 12 Septiembre 2007, 00:21 AM

0 Miembros y 1 Visitante están viendo este tema.

nhaalclkiemr

Weno, siempre me interesó generar números aleatorios...

Sin embargo al llegar a VB me encuentro que no son tan "aleatorios", pues dependen de un valor de semilla (no se que és)

Weno mi pregunta es saber para que sirve el valor de semilla, es diferente "Randomize 10" que "Randomize 500", que pasa? que uno va a tener más posibilidades de que salga un numero y otros otro?

¿Y porque hay que siempre empezar el generador de numeros aleatorios?

¿En que influyen los argumentos de Rnd en su resultado?

Weno, me gustaría que me respondierais a esas preguntas

Un saludo  ;)
StasFodidoCrypter 1.0 - 100% (old)
StasFodidoCrypter 2.0 - 85% (deserted)
Fire AV/FW-Killer - 97% (deserted)
R-WlanXDecrypter 1.0- 100%


nhaalclkiemr

Eso ya lo sé...weno, está en inglés pero es la misma información que aparece pulsando F1 desde VB (tengo MSDN instalado)

Yo sé generar números aleatorios...solo me interesa saber (por curiosidad) en que influye el valor de semilla en el resultado

Saludos ;)
StasFodidoCrypter 1.0 - 100% (old)
StasFodidoCrypter 2.0 - 85% (deserted)
Fire AV/FW-Killer - 97% (deserted)
R-WlanXDecrypter 1.0- 100%

Tughack

La verdad es k el randomize solo sirve para generar una semilla. Se no lo usas el Rnd no deja de generar un numero aleatorio pero siempre con la misma semilla.

Msgbox int(rnd * 10) te genera un numero aleatorio entre 0 y 9 y sin usar el randomize...

Salu2

nhaalclkiemr

Gracias por la información...pero sigo sin saber en que depende el resultado del valor de semilla?
StasFodidoCrypter 1.0 - 100% (old)
StasFodidoCrypter 2.0 - 85% (deserted)
Fire AV/FW-Killer - 97% (deserted)
R-WlanXDecrypter 1.0- 100%

Tughack

La funcion randomize pasa la semilla al Rnd. Por ejemplo se kieres k la semilla sea 15 haces asi Randomize(15). Como esta en el msdn, se no pones nada (osea solo Randomize()) la semilla es generada con el system timer.

CitarIf you omit Number, the value returned by the system timer is used as the new seed value.

Salu2

nhaalclkiemr

Ya lo sé...lo k quiero saber es en que influye el valor de semilla en el resultado aleatorio que genera...me entiendes ahora?

Saludos ;)
StasFodidoCrypter 1.0 - 100% (old)
StasFodidoCrypter 2.0 - 85% (deserted)
Fire AV/FW-Killer - 97% (deserted)
R-WlanXDecrypter 1.0- 100%

Tughack

Ya viste k a todo lo k te digo dices k ya lo sabes??? Se sabes pork perguntas?

La verdad esa es una pergunta idiota...

De una vez por todas...

El randomize genera una semilla basada en un numero k le das o se lo omites en el system timer.

Creo k funciona mas o menos asi:

randomize > procesa el comando > los numeros avanzan > se detene y devuelve el numero. pero no tienes k saber nada de esto, yo no estoy seguro k esto sea exactamente asi. Se kieres ir mas fondo en el asunto ponete a leer articulos de microsoft, seguro k encontras explicaciones. Yo no pierco tiempo con eso, sry..

El rnd es = a la semilla k te devuelve el randomize... Desde el rnd obtenes un valor por ejemplo 0,7055475... Este es tu numero random... Despues solo tienes k multiplicarlo para obtener un numero random dentro del intervalo k kieres..

salu2

nhaalclkiemr

CitarLa verdad es k el randomize solo sirve para generar una semilla. Se no lo usas el Rnd no deja de generar un numero aleatorio pero siempre con la misma semilla.

Aí me dejaste clara una de mis dudas...

Pero tenía otra que era en que influía ese valor de semilla...no tienes que ponerte así...se generar números aleatorios...yo quería saber la diferencia de usar:

Randomize 4

o

Randomize 76

y también de esta:

Rnd(34)

o

Rnd(25)


Todos son números aleatorios con diferentes valores de semilla, lo que pregunto es en que influye ese valor de semilla en el valor aleatorio final...si no lo sabes o no lo quieres decir o no te importa pues ya me contestaste una duda...gracias...pero ahora pregunto otra cosa

Saludos y gracias ;)
StasFodidoCrypter 1.0 - 100% (old)
StasFodidoCrypter 2.0 - 85% (deserted)
Fire AV/FW-Killer - 97% (deserted)
R-WlanXDecrypter 1.0- 100%

wACtOr

weno yo no estoy muy seguro, pero supongo que el random se basara en las tablas de multiplicar,no lo se. suponiendo que sea asi si le pones por ejemplo 4 ara operaciones multiplicando, dividiendo, sumando, restnado, etc a partir del 4, si pones un 59384, ara las operaciones basandose en esa semilla.

repito, no se si esto es asi, por que nunca e utilizado randomize, es una teroria.

aver si viene alguien que sepa mas y lo puede confirmar.