Foro de elhacker.net

Programación => .NET (C#, VB.NET, ASP) => Mensaje iniciado por: jan77 en 29 Enero 2011, 15:26 pm



Título: codigo para que no se repitan los numeros aleatorios con un randomize
Publicado por: jan77 en 29 Enero 2011, 15:26 pm
hola compañeros, espero puedan ayudarme, tengo un codigo para crear numeros aleatorios, que funciona perfectamente, pero quisiera que los numeros que vayan saliendo no se repitan , i como podria ir almacenando cada resultado , gracias este es el codigo:
Código
  1. Public Class Form1
  2.  
  3.    Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
  4.  
  5.        Timer1.Enabled = False
  6.    End Sub
  7.  
  8.    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
  9.  
  10.        Dim numero As Byte
  11.        Timer1.Enabled = True
  12.  
  13.        Randomize()
  14.  
  15.  
  16.        numero = Rnd() * 6
  17.  
  18.        Do While numero > 6
  19.            numero = numero - 6
  20.        Loop
  21.  
  22.        Do While numero < 1
  23.            numero = numero + 6
  24.        Loop
  25.  
  26.        Loop
  27.        TextBox1.Text = numero
  28.    End Sub
  29.  
  30.  
  31. End Class
  32.  


Título: Re: codigo para que no se repitan los numeros aleatorios con un randomize
Publicado por: raul338 en 29 Enero 2011, 16:13 pm
Ve agregandolos a una lista (List(Of Integer)) y te vas fijando con "Contains" para ver si se repite o no :)

PD: Este tema lo movi a .net, porque es visual basic .net, y siempre pon el codigo entre etiquetas [code][/code]


Título: Re: codigo para que no se repitan los numeros aleatorios con un randomize
Publicado por: jan77 en 5 Febrero 2011, 10:49 am
Ve agregandolos a una lista (List(Of Integer)) y te vas fijando con "Contains" para ver si se repite o no :)

PD: Este tema lo movi a .net, porque es visual basic .net, y siempre pon el codigo entre etiquetas [code][/code]

me podrias indicar como seria el codigo para insertar los resultados en una lista?, no se como se hace, soy novato, gracias


Título: Re: codigo para que no se repitan los numeros aleatorios con un randomize
Publicado por: kingdarnakes en 5 Febrero 2011, 11:49 am
Tu código tiene 1 error, tiene un loop de mas. Cuando haces la suma:

Código:
numero = numero - 6

Se puede hacer así:

Código:
numero -= - 6

Tendrás el mismo resultado.

Con respecto ha almacenar los valores Yo usaría un array con tantos elementos como números quieras almacenar. Luego usas una variable para ir moviéndote por cada elemento, y esta variable que vaya incrementando.

La función Rnd() devuelve un número de tipo single... http://msdn.microsoft.com/es-es/library/f7s023d2%28v=vs.80%29.aspx