elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Arreglado, de nuevo, el registro del warzone (wargame) de EHN


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación General
| | |-+  .NET (C#, VB.NET, ASP)
| | | |-+  Programación Visual Basic (Moderadores: LeandroA, seba123neo)
| | | | |-+  Hacer valores aleatorios sin Select Case
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Hacer valores aleatorios sin Select Case  (Leído 3,379 veces)
oskoa

Desconectado Desconectado

Mensajes: 53


Ver Perfil
Hacer valores aleatorios sin Select Case
« en: 13 Noviembre 2011, 23:42 pm »

Buenas noches, lo que andaba buscando es un código que me tire valores aleatoris preexistentes de forma completamente aletoria.

Cuando uso el Selectcase, los hace aleatorios, pero siempre en el mismo orden... y eso me perjudica mucho, tienen que ser completamente aleatorio. cada vez que se inicia el programa el "random" va siepmre en el mismo orden.

como haria para que siempre sea aleatorio?


  sel = Int(Rnd() * 19)

  Select Case sel
   
Case 0
txtserial.Text = "Nmero 1"
Case 1
txtserial.Text = "Nmero 2"
Case 2
txtserial.Text = "Nmero 3"
Case 3
txtserial.Text = "Nmero 4"

Con eso por ejemplo la 1ra vez tira "4 1 3 2" en ese orden de aleatorio, pero cada vez que le doy play, hce lo mismo "4 1 3 2" mi intencion es que siempre sea diferente el ordenn, ademas que sean aleatorios

Como serñia?



En línea

seba123neo
Moderador
***
Desconectado Desconectado

Mensajes: 3.621



Ver Perfil WWW
Re: Hacer valores aleatorios sin Select Case
« Respuesta #1 en: 13 Noviembre 2011, 23:44 pm »

tenes que poner Randomize() arriba del Rnd()

Ejemplos para generar números aleatorios

saludos.


En línea

Elemental Code


Desconectado Desconectado

Mensajes: 622


Im beyond the system


Ver Perfil
Re: Hacer valores aleatorios sin Select Case
« Respuesta #2 en: 14 Noviembre 2011, 00:01 am »

Código
  1. Private Function RandomNumBetween(ByVal LowerLimit As Long, ByVal UpperLimit As Long) As Long
  2.  Randomize Timer  
  3. ' This function returns a pseudo-random number between
  4.  ' the specified limits (inclusive).
  5.  RandomNumBetween = Rnd * (UpperLimit - LowerLimit) + LowerLimit
  6. End Function
En línea

I CODE FOR $$$
Programo por $$$
Hago tareas, trabajos para la facultad, lo que sea en VB6.0

Mis programas
BlackZeroX
Wiki

Desconectado Desconectado

Mensajes: 3.158


I'Love...!¡.


Ver Perfil WWW
Re: Hacer valores aleatorios sin Select Case
« Respuesta #3 en: 14 Noviembre 2011, 00:23 am »

.
Código
  1.  
  2. Private Sub Form_Load()
  3. Dim i As Integer
  4.    For i = 0 To 99
  5.        Debug.Print numRandom(1, 3)
  6.    Next
  7. End Sub
  8.  
  9. Private Sub lSwap(ByRef l1 As Long, ByRef l2 As Long)
  10. '   //  Intercambia el contenido de las variables.
  11.    l2 = l2 Xor l1
  12.    l1 = l1 Xor l2
  13.    l2 = l2 Xor l1
  14. End Sub
  15.  
  16. Private Function fixNumbers(ByRef lMin As Long, ByRef lMax As Long) As Boolean
  17. '   //  Corrige los valores dados.
  18.    If lMax < lMin Then
  19.        Call lSwap(lMin, lMax)
  20.        fixNumbers = True
  21.    End If
  22. End Function
  23.  
  24. Private Function numRandom(ByVal lMin As Long, ByVal lMax As Long) As Long
  25. '   //  Genera un Numero aleatorio de acuerdo a un rango dado.
  26.    Call fixNumbers(lMin, lMax)
  27.    Call Randomize
  28.    numRandom = (lMin - lMax) * Rnd + lMax
  29. End Function
  30.  
  31.  

Si quieres una clase mas completa: cRndNumbersNR

Dulces Lunas!¡.
« Última modificación: 14 Noviembre 2011, 00:27 am por BlackZeroX (Astaroth) » En línea

The Dark Shadow is my passion.
Elemental Code


Desconectado Desconectado

Mensajes: 622


Im beyond the system


Ver Perfil
Re: Hacer valores aleatorios sin Select Case
« Respuesta #4 en: 14 Noviembre 2011, 17:58 pm »

blackzero, acostumbrate a poner
Código
  1. Randomize Timer

Siguen siendo "pseudoaleatorios" pero como la seed timer cambia por segundo es mas dificil que sean siempre en el mismo orden.

Se entiende? :S



EDITO

Citar
Timer Function

Returns a Single representing the number of seconds elapsed since midnight.

http://msdn.microsoft.com/en-us/library/Aa263387
« Última modificación: 14 Noviembre 2011, 18:01 pm por Elemental Code » En línea

I CODE FOR $$$
Programo por $$$
Hago tareas, trabajos para la facultad, lo que sea en VB6.0

Mis programas
BlackZeroX
Wiki

Desconectado Desconectado

Mensajes: 3.158


I'Love...!¡.


Ver Perfil WWW
Re: Hacer valores aleatorios sin Select Case
« Respuesta #5 en: 14 Noviembre 2011, 18:37 pm »

blackzero, acostumbrate a poner
Código
  1. Randomize Timer

Siguen siendo "pseudoaleatorios" pero como la seed timer cambia por segundo es mas dificil que sean siempre en el mismo orden.

Se entiende? :S



EDITO

http://msdn.microsoft.com/en-us/library/Aa263387


En ningun momento es PseudoAletaorio... Nunca se repiten solo es una conjetura tuya hecha al azar sin fundamento establecido...

Si lees mas a fondo la MSDN en las funciones que realmente son nesesarias, omitiriamos momentos vergonzosos...

Randomize = Randomize timer

http://msdn.microsoft.com/en-us/library/8zedbtdt%28v=VS.80%29.aspx

Citar

This example uses the Randomize statement to initialize the random-number generator. Because the number argument has been omitted, Randomize uses the return value from the Timer function as the new seed value.


Dulces Lunas!¡.
« Última modificación: 14 Noviembre 2011, 18:41 pm por BlackZeroX (Astaroth) » En línea

The Dark Shadow is my passion.
Elemental Code


Desconectado Desconectado

Mensajes: 622


Im beyond the system


Ver Perfil
Re: Hacer valores aleatorios sin Select Case
« Respuesta #6 en: 14 Noviembre 2011, 19:14 pm »

si no meto la pata como aprendo?   :-[ :xD
En línea

I CODE FOR $$$
Programo por $$$
Hago tareas, trabajos para la facultad, lo que sea en VB6.0

Mis programas
BlackZeroX
Wiki

Desconectado Desconectado

Mensajes: 3.158


I'Love...!¡.


Ver Perfil WWW
Re: Hacer valores aleatorios sin Select Case
« Respuesta #7 en: 14 Noviembre 2011, 19:28 pm »

si no meto la pata como aprendo?   :-[ :xD

leyendo? ademas de prueba y error...

P.D.: Me recuerdas a mi cuando apenas empesaba... cobein/seba123neo siempre saltaba (alguno) cuando me equivocaba.

Dulces Lunas!¡.
En línea

The Dark Shadow is my passion.
Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Duda con Select Case
Programación Visual Basic
Scratz 6 2,961 Último mensaje 17 Diciembre 2007, 00:04 am
por Scratz
Problemas con SELECT CASE « 1 2 »
Programación Visual Basic
stork32 13 6,849 Último mensaje 12 Octubre 2008, 13:17 pm
por Spider-Net
select case sql, enviar form
PHP
alexkof158 5 5,882 Último mensaje 28 Febrero 2010, 23:34 pm
por mokoMonster
consejo sobre el uso del Select Case en este ejercicio
Programación Visual Basic
lio crossroad 6 3,659 Último mensaje 21 Abril 2013, 22:48 pm
por lio crossroad
[DUDA] Select Case
Programación Visual Basic
Zodiak98 2 1,958 Último mensaje 21 Mayo 2013, 13:24 pm
por 79137913
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines