none
necesito ayuda, con una en aplicación con random, numeros sin repetir visual studio net RRS feed

  • Pregunta

  • hola saludos a todos

    me encuentro desarrollando una aplicación en la cual genero números aleatorios, entre 1 al 5 , la idea es que vallan saliendo de a uno cada vez que pulse el botón, sin repetir , y los muestre en su casillero correspondiente al numero salido, una vez que hayamos alcanzado los cinco intentos , se emite el mensaje , juego terminado. la idea es que salgan los números aleatoria mente del 1 al cinco , sin repetir, por lo cual cinco intentos saldrían los cinco números, es algo similar al juego del bimbo, pero con menos bolas.

    el problema es que no se como realizar para que se efectué la comparación , e impedir que se repitan los números. 

    lo que tengo, los genero con random, y los muestro en un label, y en otros label enumerados del uno al cinco muestro los números ya salidos de acuerdo al numero generado. 

    este es mi desarrollo

    public Class Form1
        Dim rnd As New Random
        Dim numero As Integer
        Dim D = 0
        Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
            

            numero = rnd.Next(1, 6) 'Numero aleatorio comprendido entre 1 y 5

            
            Label7.Text = numero
                If numero = 1 Then Label1.Text = "1"
                If numero = 2 Then Label2.Text = "2"
                If numero = 3 Then Label3.Text = "3"
                If numero = 4 Then Label4.Text = "4"
                If numero = 5 Then Label5.Text = "5"
                D += 1 : Label6.Text = D
            If D = 5 Then TextBox1.Visible = True : TextBox1.Text = "se acabaron los numeros"
            If D = 5 Then Button1.Visible = False
            If D = 5 Then comenzar.Visible = True
        End Sub

        Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
            Button1.Visible = True
            comenzar.Visible = False
            TextBox1.Visible = False
        End Sub

        Private Sub Button2_Click(sender As Object, e As EventArgs) Handles comenzar.Click
            Button1.Visible = True
            comenzar.Visible = False
            TextBox1.Visible = False
            D = 0
            Label1.Text = ""
            numero = 0
            Label2.Text = ""
            Label3.Text = ""
            Label4.Text = ""
            Label5.Text = ""
            Label6.Text = ""

            Label7.Text = ""
        End Sub


    End Class

    el problema es que no se como realizar para que se efectué la comparación , e impedir que se repitan los números. cada vez que presione el botón deveria arrojarme un numero de 1 al 5 sin repetir los que ya han salidos .

    agradecería su colaboración


    jhon fonttz


    lunes, 13 de julio de 2020 2:38

Respuestas

  • por alguna razón que desconozco la aplicación no me acepta poner end if , a los if

    Eso es porque tus If tienen una sentencia en la misma línea del If. El Endif solo se pone cuando la sentencia o sentencias estás en diferentes líneas.

    Por ejemplo:

    If D = 5 Then Button1.Visible = False 'Este no lleva End If
    
    If D = 5 Then
        Button1.Visible = False
    End If 'Este sí lleva End If.

    • Marcado como respuesta jhon fonttz lunes, 13 de julio de 2020 13:07
    lunes, 13 de julio de 2020 5:18
  • Hola

    Veo que ya tienes una respuesta a tu pregunta. Si tienes otra consulta no dudes en abrir otro hilo.

    Saludos!

    • Marcado como respuesta jhon fonttz martes, 14 de julio de 2020 19:54
    lunes, 13 de julio de 2020 16:25
    Moderador

Todas las respuestas

  • por alguna razón que desconozco la aplicación no me acepta poner end if , a los if

    Eso es porque tus If tienen una sentencia en la misma línea del If. El Endif solo se pone cuando la sentencia o sentencias estás en diferentes líneas.

    Por ejemplo:

    If D = 5 Then Button1.Visible = False 'Este no lleva End If
    
    If D = 5 Then
        Button1.Visible = False
    End If 'Este sí lleva End If.

    • Marcado como respuesta jhon fonttz lunes, 13 de julio de 2020 13:07
    lunes, 13 de julio de 2020 5:18
  • Hola

    Veo que ya tienes una respuesta a tu pregunta. Si tienes otra consulta no dudes en abrir otro hilo.

    Saludos!

    • Marcado como respuesta jhon fonttz martes, 14 de julio de 2020 19:54
    lunes, 13 de julio de 2020 16:25
    Moderador