Usuário com melhor resposta
Combinação de números

Pergunta
-
Olá pessoal,
Preciso de um algorítimo que faça combinações de 7 números dentre uma sequencia de 70 números, todos devem estar com todos, porém sem repetições, as combinações devem ser aleatórias não sequenciais.
Alguém tem algo parecido ou pode indicar o caminho das pedras?
Conto com qualquer ajuda.
Respostas
-
Deixo-te um procedimento simples para escolher 7 números de um conjunto de 70 e mostrá-los em 7 textboxes.
O procedimento segue o principio de escolher un numero e retirá-lo do conjunto, para não ser escolhido novamente, tipo bingo.
Private Sub SeteEmSetenta() Dim NN(70) As Integer Dim Nt As Integer = 70 Dim NS(7) As Integer 'Carregar os números de 1 a 70 For I As Integer = 1 To Nt : NN(I) = I : Next I 'Escolher 7 números Dim R As Integer For i = 1 To 7 R = 1 + Int(Rnd() * Nt) NS(i) = NN(R) 'copiar o numero sorteado NN(R) = NN(Nt) 'passar o ultimo para o lugar deste Nt = Nt - 1 'diminuir o conjunto, evitando o ultimo Next 'Ordenar os numeros sorteados For i = 1 To 6 For J As Integer = i + 1 To 7 If NS(i) > NS(J) Then R = NS(i) NS(i) = NS(J) NS(J) = R End If Next Next 'Mostrar os numeros por ordem TextBox1.Text = NS(1) TextBox2.Text = NS(2) TextBox3.Text = NS(3) TextBox4.Text = NS(4) TextBox5.Text = NS(5) TextBox6.Text = NS(6) TextBox7.Text = NS(7) End Sub
- Sugerido como Resposta Jeimes Ribeiro sábado, 18 de agosto de 2012 03:03
- Marcado como Resposta Levi DomingosModerator domingo, 19 de agosto de 2012 14:05
Todas as Respostas
-
http://social.msdn.microsoft.com/Forums/pt-BR/clientept/thread/3ba1adbb-0093-4ba4-b92e-cc23e75bb44c
http://malange-levi.blogspot.co.uk/
-
-
Olá Daxxel
Não entendi como deseja essa combinação, talvez se você exemplificar pode ficar mais fácil.
Obs.: O fato do link que o Malange postou está em C# não é problema, visto que para converter C# para VB.NET qualquer um faz, basta para isso digitar no google "C# para VB.NET", colar o código e clicar no botão "converter".
Att.: Jeimes Ribeiro
-
Deixo-te um procedimento simples para escolher 7 números de um conjunto de 70 e mostrá-los em 7 textboxes.
O procedimento segue o principio de escolher un numero e retirá-lo do conjunto, para não ser escolhido novamente, tipo bingo.
Private Sub SeteEmSetenta() Dim NN(70) As Integer Dim Nt As Integer = 70 Dim NS(7) As Integer 'Carregar os números de 1 a 70 For I As Integer = 1 To Nt : NN(I) = I : Next I 'Escolher 7 números Dim R As Integer For i = 1 To 7 R = 1 + Int(Rnd() * Nt) NS(i) = NN(R) 'copiar o numero sorteado NN(R) = NN(Nt) 'passar o ultimo para o lugar deste Nt = Nt - 1 'diminuir o conjunto, evitando o ultimo Next 'Ordenar os numeros sorteados For i = 1 To 6 For J As Integer = i + 1 To 7 If NS(i) > NS(J) Then R = NS(i) NS(i) = NS(J) NS(J) = R End If Next Next 'Mostrar os numeros por ordem TextBox1.Text = NS(1) TextBox2.Text = NS(2) TextBox3.Text = NS(3) TextBox4.Text = NS(4) TextBox5.Text = NS(5) TextBox6.Text = NS(6) TextBox7.Text = NS(7) End Sub
- Sugerido como Resposta Jeimes Ribeiro sábado, 18 de agosto de 2012 03:03
- Marcado como Resposta Levi DomingosModerator domingo, 19 de agosto de 2012 14:05
-
A rotina do Nando ajudou bastante.
- Marcado como Resposta Levi DomingosModerator domingo, 19 de agosto de 2012 14:04
- Não Marcado como Resposta Levi DomingosModerator domingo, 19 de agosto de 2012 14:05
-