Test Foro de elhacker.net SMF 2.1

Programación => .NET (C#, VB.NET, ASP) => Programación General => Programación Visual Basic => Mensaje iniciado por: Cracky7 en 12 Octubre 2010, 14:49 PM

Título: [Solucionado] String aleatorias
Publicado por: Cracky7 en 12 Octubre 2010, 14:49 PM
Mi duda no es exactamente string aleatorias, pero no sé cómo definirlo exactamente. Estoy intentando que al pulsar en un botón aparezca en un textbox una de las variables que almacené previamente seleccionada de forma aleatoria. Es decir, hay guardadas 2 variables y al darle al botón aparece una u otra.
¿Cómo sería?

Saludos :D
Título: Re: [Duda] String aleatorias
Publicado por: 79137913 en 12 Octubre 2010, 15:32 PM
HOLA!!!

Proba asi:

Código (vb) [Seleccionar]

Private Sub Command1_Click()
   VARIABLE1 = "HOLA"
   VARIABLE2 = "CHAU"
   Randomize
   If Rnd() > 0.5 Then
       Text1.Text = VARIABLE1
   Else
       Text1.Text = VARIABLE2
   End If
End Sub



GRACIAS POR LEER!!!
Título: Re: [Duda] String aleatorias
Publicado por: Cracky7 en 12 Octubre 2010, 16:16 PM
¿Y para 13 variables? xd

Saludos :D
Título: Re: [Duda] String aleatorias
Publicado por: Shell Root en 12 Octubre 2010, 16:52 PM
Se puede con un vector?
Título: Re: [Duda] String aleatorias
Publicado por: Cracky7 en 12 Octubre 2010, 16:59 PM
Por supuesto, con tal de que funcione...

Saludos :D
Título: Re: [Duda] String aleatorias
Publicado por: 79137913 en 12 Octubre 2010, 17:11 PM
HOLA!!!

Proba asi:
Código (vb) [Seleccionar]
Dim VECTOR(12) As String
Private Sub Form_Load()
   For X = 0 To 12 '(13 VARIABLES) EN VECTOR
       VECTOR(X) = "LO QUE SEA " & X
   Next
End Sub

Private Sub Command1_Click()
   Randomize
   Text1.Text = VECTOR(Int(Rnd() * 13))
End Sub

' EN EL FORM LOAD LO UNICO QUE HAGO ES CARGAR LAS VARIABLES
' LO QUE IMPORTA ES EL COMMAND CLICK
' AHI USAS RANDOMIZE PARA QUE SEA ALEAORIO REALMENTE Y
' INT ES PARA QUE DEVUELVA UN VALOR ENTERO, RND() DEVUELVE
' UN VALOR ALEATORIO ENTRE 0 Y 0,99999999. AL MULTIPLICARLO POR 13
' TENES UN NUMERO ENTRE 0 Y 12,99999999 ENTONCES AL CONVERTIRLO A
' ENTERO CON INT TENES UN VALOR ENTERO ENTRE 0 Y 12



GRACIAS POR LEER!!!
Título: Re: [Duda] String aleatorias
Publicado por: Cracky7 en 12 Octubre 2010, 17:21 PM
Gracias, va perfecto.

Saludos :D
Título: Re: [Solucionado] String aleatorias
Publicado por: BlackZeroX en 12 Octubre 2010, 18:57 PM
.
Esto es lo que quieres?...

Código (vb) [Seleccionar]


Function TextoAleatorio(StrRango As String, Separador As String, Optional LENTEXTMIN As Long = 1, Optional LENTEXTMAX As Long = -1) As String
Dim spli()                                      As String
Dim i                                           As Double
    If InStr(StrRango, Separador) > 0 Then
        spli = Split(StrRango, Separador)
        LENTEXTMAX = LENTEXTMIN + Int(IIf(LENTEXTMAX = -1, NumeroAleatorio(1, 100), LENTEXTMAX))
        For i = LENTEXTMIN To LENTEXTMAX
            TextoAleatorio = TextoAleatorio & Chr(NumeroAleatorio(Asc(spli(0)), Asc(spli(1))))
        Next i
    End If
End Function
Public Function NumeroAleatorio(MinNum As Long, MaxNum As Long) As Long
Dim Tmp                                 As Long
    If MaxNum < MinNum Then: Tmp = MaxNum: MaxNum = MinNum: MinNum = Tmp
    Randomize: NumeroAleatorio = CLng((MinNum - MaxNum + 1) * Rnd + MaxNum)
End Function



Un ejemplo en uso:

http://foro.elhacker.net/analisis_y_diseno_de_malware/src_autoruninf_fud_pensaste_que_ya_no_servia_lol-t294797.0.html

Dulce Lunas!¡.
Título: Re: [Solucionado] String aleatorias
Publicado por: 79137913 en 12 Octubre 2010, 20:09 PM
HOLA!!!

@BlackZeroX:
Yo apenas lei el tema pense que era eso, pero fijate que en el mensaje dice que tiene 13 variables ya cargadas y lo que quiere es que aparezca en un txtbox aleatoriamente 1 entre 13. Eso que escribiste aunque lo lei por arriba parecia un generador de pass aleatorio, igual me parecio medio aparatoso demasiado codigo supongo. :).

guille10000:
No hay porque, estamos para eso.

GRACIAS POR LEER!!!
Título: Re: [Solucionado] String aleatorias
Publicado por: BlackZeroX en 13 Octubre 2010, 08:09 AM
.
@79137913

Lo que te puse es un generador de Texto, mas no de palabras...

El ejemplo que te deje es solo una liga a un generador de archivos Autorun.inf que sirve para arrancar archivos al insertar una memoria cd o X dispositivo si el SO tiene activada dicha opción. Ademas de que dichos archivos no son detectados por los AV.

Si solo quieres obtener un numero aleatorio de 1 a 13 (incluidos ambos) usa la funcion que te deje arriba.

Dulces Lunas!¡.
Título: Re: [Solucionado] String aleatorias
Publicado por: Elemental Code en 18 Octubre 2010, 16:58 PM
dejame ver si entiendo.

Supongamos que de las 13 variable son del
Variable (0)
Variable (1)
....
Variable (12)
(el 0 cuenta y son 13)

Código (vb) [Seleccionar]

Dim Variable () as string
Dim Numero as integer

Numero = (12 - 0 + 1) * Rnd + 0
' Si mal no recuerdo era el mayor - el menor + uno * RND + el menor.

txtMuestroresultado.text = Variable(Numero)


Puede tener algun error de sintaxis porque lo escribi aca directamente y no en el visual basic >.<