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

 

 


Tema destacado: Rompecabezas de Bitcoin, Medio millón USD en premios


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación General
| | |-+  Ejercicios
| | | |-+  ejercicio Nº1 de Visual basic
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: 1 [2] Ir Abajo Respuesta Imprimir
Autor Tema: ejercicio Nº1 de Visual basic  (Leído 29,670 veces)
rogersoft

Desconectado Desconectado

Mensajes: 2



Ver Perfil
Solución al Ejercicio No. 1, Saludos desde Zacatecas, México
« Respuesta #10 en: 7 Enero 2005, 16:45 pm »

Option Explicit
Dim Numeros(0 To 5), contador, a, b, valor As Integer
Dim YaEsta As Variant
Private Sub Form_Load()
Randomize
End Sub
Private Sub Crear_Click()
For a = 0 To 4
    Generados.Col = 0
    Generados.Row = a
    Generados.Text = ""
Next
    contador = 0
 While contador < 5
10      b = 0
        valor = Int((Rnd * 99) + 1)
    For a = 0 To 4
        Generados.Col = 0
        Generados.Row = a
        YaEsta = Generados.Text
        If valor = YaEsta Then b = 1
    Next
        If b = 1 Then GoTo 10
        Numeros(contador) = valor
        contador = contador + 1
    Wend
End Sub
Private Sub Mostrar_Click()
For a = 0 To 4
    Generados.Col = 0
    Generados.Row = a
    Generados.Text = Numeros(a)
Next
End Sub


En línea

Si pudiera expresar con palabras lo que siento, entonces sería un poeta
c0rrupt_gamer


Desconectado Desconectado

Mensajes: 764



Ver Perfil
Re: ejercicio Nº1 de Visual basic
« Respuesta #11 en: 19 Abril 2005, 12:10 pm »

pues yo creo k la mejor forma de conseguir numeros aleatorios es  el randomize timer

es decir en donde se pone el randomize, en vez de poner randomize a secas se pone "randomize timer" para k la  "semilla" vaya cambiando conforme al rloj del pc, lo k no se es si cambia con los segundos o con los milisegundos pero a mi nunca se me repiten los numeros, si hay otra forma aun mejor k esta ya la notificara alguien del foro.


saludos ;D


En línea

soplo
Ex-Staff
*
Desconectado Desconectado

Mensajes: 3.592

Debian rool'z


Ver Perfil
Re: ejercicio Nº1 de Visual basic
« Respuesta #12 en: 24 Abril 2005, 14:28 pm »

Hola
Hay dos conceptos en lo que respecta a números aleatorios. El primero es que en todos los lenguajes hay una orden para obtener un número aleatorio. En visual basic es RND y devuelve valores aleatorios entre 0 y 1. Por tanto si queremos obtener números entre 0 y 9 tendremos que multiplicarlo por nueve (RND*9)

La otra cosa es que lógicamente RND devuelve un número aleatorio gracias a un algoritmo concreto que está incluído en el lenguaje. Ese algoritmo si no se le dice nada parte de un determinado número por lo que siempre que parta de ese número dará los mismos resultados. Para evitar esto se le puede decir que parta de otro valor cualquiera. La orden RANDOMIZE le dice que parta de otro valor que le indique. Si le digo por tanto RANDOMIZE TIMER le estoy diciendo que parta de el tiempo en ese instante (que será distinto de un impulso después).

Un saludo
En línea

Callar es asentir ¡No te dejes llevar!
c0rrupt_gamer


Desconectado Desconectado

Mensajes: 764



Ver Perfil
Re: ejercicio Nº1 de Visual basic
« Respuesta #13 en: 24 Abril 2005, 21:35 pm »

Veis lo k yo decia? No tengais miedo a responder si creeis saber la respuesta, en este foro siempre hay gente tan entendida en el tema como el soplo `para corroborar o corregir las posibles respuestas que deis.

PD: Anda k no hay diferencia entre explicarlo komo yo y komo él! :o  Me alegro de haber acertao porke si no me tiraba por los suelos, jejeje


Saludos, y gracias a soplo por determinar bien el por k , yo antes entendia k con randomize timer se cambiaba la "semilla" pero el resto no lo tenia mu claro.
En línea

rob1104


Desconectado Desconectado

Mensajes: 340


Usuario común


Ver Perfil WWW
Re: ejercicio Nº1 de Visual basic
« Respuesta #14 en: 17 Junio 2005, 07:44 am »

ya resolvi el reto, a mi me funciona bien no se que les paresca a ustedes

Código:
Private Sub cmdCalcular_Click()
    Dim n1 As Integer
    Dim n2 As Integer
    Dim n3 As Integer
    Dim n4 As Integer
    Dim n5 As Integer
    Randomize
    n1 = Int(Rnd * 99) + 1
    n2 = Int(Rnd * 99) + 1
    n3 = Int(Rnd * 99) + 1
    n4 = Int(Rnd * 99) + 1
    n5 = Int(Rnd * 99) + 1
   
    If n1 <> n2 And n1 <> n3 And n1 <> n4 And n1 <> n5 And n2 <> n3 And n2 <> n4 And n2 <> n5 And n3 <> n4 And n3 <> n5 And n4 <> n5 Then
        lbl1.Caption = n1
        lbl2.Caption = n2
        lbl3.Caption = n3
        lbl4.Caption = n4
        lbl5.Caption = n5
    Else
        cmdCalcular_Click
    End If
   
End Sub

Private Sub cmdImprimir_Click()
    On Error Resume Next
    cuadrodedialogo.CancelError = True
    cuadrodedialogo.ShowPrinter
    If Err = 0 Then
        Printer.Font = "Comic Sans MS"
        Printer.FontSize = 36
        Printer.Print " "
        Printer.Print "Los numeros generados por el LOTO son: " & vbCrLf & lbl1.Caption & " " & lbl2.Caption & " " & lbl3.Caption & " " & lbl4.Caption & " " & lbl5.Caption
        Printer.EndDoc
    End If
End Sub

Private Sub cmdSalir_Click()
    End
End Sub

acepto sugerencias y notifiacion d error, un gran saludo
En línea

Sin análisis de requisitos o sin diseño, programar es el arte de crear errores en un documento de texto vacío.
firesoul76

Desconectado Desconectado

Mensajes: 1


Ver Perfil
Re: ejercicio Nº1 de Visual basic
« Respuesta #15 en: 14 Diciembre 2009, 16:09 pm »

Hoola a todos!
Quisiera ver si alguno me puede ayudar....

Estoy haciendo algo parecido a esto, solo que los números son específicos. Por ejemplo: tengo los números 33, 10, 11, 12, 13, 21, 25, 27 y 30 y quiero obtener 6 de ellos cada vez que genere el comando o la función.

Gracias....
En línea

Páginas: 1 [2] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
ejercicio con matrices o funciones en visual c++
Programación C/C++
ZUVAI 1 2,272 Último mensaje 7 Septiembre 2013, 08:54 am
por Eternal Idol
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines