Visual Basic - Ayuda! Funcion "Random"

Life is soft - evento anual de software empresarial
 
Vista:

Ayuda! Funcion "Random"

Publicado por Alejandro (10 intervenciones) el 02/10/2008 21:56:44
Buenas a todos. Necesito mucha ayuda con esto ya que es el principal objetivo del programa. Necesito que, al hacer click en un boton, una variable X, y una variable Y, generen aleatoriamente un valor entre 0 y 199, y que estos valores (al mismo tiempo), pasen al label de otro formulario. Trate de hacerlo asi:

NOTA: Las variables las tengo declaradas en general, como integer

CMDMostrar_Click

Frmdatos.show
X = 0 <= Rnd <= 199
Y = 0 <= Rnd <= 199
Frmdatos.lblx.caption = X
Frmdatos.lbly.caption = Y

Pero lo unico que escribe en el label es "True"

Espero que puedan ayudarme. Les agradesco.
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:Ayuda! Funcion

Publicado por Chicho (80 intervenciones) el 02/10/2008 22:21:09
Para obtener valor aleatorios entre dos numeros deberias usar este metodo

numero=Int((NumeroMayor - NumeroMenor + 1) * Rnd + NumeroMenor)

donde "NumeroMayor" en tu caso es: 199
y "NumeroMenor" en tu caso es: 0

El Metodo quedaria Asi:
numero=Int((199 - 0 + 1) * Rnd + 0)

la funcion Rnd por si sola devuelve numero aleatorio con decimeles entre 0 y 10
por ejemplo:
0,54654
9,54654
9,57898
0,11587

se usa int para que devuelva solo numeros enteros y la estructura que te puese sirve para delimitar el ango a los valores que vos queres:

CONCLUCION:

Frmdatos.show
X = Int((199 - 0 + 1) * Rnd + 0)
Y = Int((199 - 0 + 1) * Rnd + 0)
Frmdatos.lblx.caption = X
Frmdatos.lbly.caption = Y

igual no te recomiendo que uses esos nombres de variables (x, y) por que podrias tener conflistos con otros controles que usan esas variables en alguno de sus eventos
como ser el evneto mousemove de cualquier control que lo permita
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:Ayuda! Funcion

Publicado por Alejandro (10 intervenciones) el 02/10/2008 22:51:35
Wow, no se que decir, muchisimas gracias otra vez! Y voy a cambiar los valores de X e Y, los llamare valorx y valory. No quiero tener problemas por errores tontos como esos, jeje. Gracias nuevamente chicho, agradesco mucho tu ayuda!
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:Ayuda! Funcion

Publicado por Alejandro (10 intervenciones) el 02/10/2008 23:10:09
Falto una cosa, suerte que me di cuenta!

Al poner lo que me dijiste solo salia un valor para X (141) y para Y (106). Hasta que me di cuenta que faltaba un pequeño detalle, el "Randomize" arriba de esto, para que activara el "Rnd". Entonces quedaria:

Randomize
valorx = Int((199 - 0 + 1) * Rnd + 0)
valory = Int((199 - 0 + 1) * Rnd + 0)
frmdatos.lblx.Caption = valorx
frmdatos.lbly.Caption = valory

Muchas gracias Chicho, sin ese codigo no hubiera podido hacer nada. 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