Ir para conteúdo
Fórum Script Brasil
  • 0

Como Fazer Um Sorteio Em Grupos


venomgz

Pergunta

eu olhei no forum, mas não encontrei nada relacionado a isso

como gerar um numero aleatorio eu já sei, mas não sei como fazer pra não repetir, vi ate um post sugerindo guardar num vetor ou algo assim mas sinceramente nem sei como começar

basicamente:

tenho 8 grupos e 32 pessoas, quero dividir essas 32 pessoas nos grupos, cada grupo ficaria com no maximo 4

alguém poderia me ajudar?

Link para o comentário
Compartilhar em outros sites

15 respostass a esta questão

Posts Recomendados

  • 0

Fiz um exemplo para você:

    Dim pessoas As New Collection
    
    Do While pessoas.Count <> 32
        n = Int(Rnd() * 32) + 1
        achou = False
        For Each pessoa In pessoas
            If pessoa = n Then
                achou = True
            End If
        Next pessoa
        
        If Not achou Then
            pessoas.Add n
        End If
    Loop
    
    grupo = 1
    For i = 1 To 32 Step 4
        Debug.Print "Grupo nº " & grupo & ": ", pessoas(i), pessoas(i + 1), pessoas(i + 2), pessoas(i + 3)
        grupo = grupo + 1
    Next i

Dê uma boa olhada no código acima e veja se você consegue entender a lógica. Qualquer dúvida, 'stamos aí.

Abraços,

Graymalkin

Link para o comentário
Compartilhar em outros sites

  • 0

puts coloquei la no vb mas não entendi muito bem... não sou tão experiente no você

o que eu faço depois disso? como eu faço pra aparecer nos textbox?

tipo são 8 textbox, um pra cada grupo, como faço pra ele ir jogando?

Eu coloquei para aparecer na janela Imediata (Immediate Window - CTRL + G). É naquele último For... Next.

Abraços,

Graymalkin

Link para o comentário
Compartilhar em outros sites

  • 0

então... você só definiu uma variavel ali, no caso pessoas

ai tem: achou, n, i, pessoa

não sei o que fazer com isso, o que você colocou no form pra dar certo?

Não precisa fazer nada, só colar aquele código no evento Click de um botão no form. A declaração de variáveis/objetos é opcional (a menos que você tenha colocado Option Explicit no form). Realmente não sei como você não está conseguindo fazer algo tão simples assim, mas fiz exatamente o que disse acima e disponibilizei o projeto aqui: http://www.gs.kitbr.com/stuff/Sorteio.zip

Abraços,

Graymalkin

Link para o comentário
Compartilhar em outros sites

  • 0

certo, com o projeto ficou mais facil

mas como eu faria pra jogar distribuir em 8 textbox?

Você identificou onde é que os grupos são mostrados? Então, é ali que você vai ter mudar. Você não sabe preencher uma caixa de texto via código?

Abraços,

Graymalkin

Link para o comentário
Compartilhar em outros sites

  • 0

sei, seria ela mesmo mais ela mesmo e o valor a adicionar

então no caso seria text1 = pessoa1 text2= pessoa2?

A idéia não é jogar as 4 primeiras pessoas na 1ª caixa de texto, as 4 seguintes na 2ª caixa, as próximas 4 na 3ª caixa e assim por diante? Se for, a dica que eu posso te dar é utilizar aquela variável grupo para identificar qual a caixa de texto a ser preenchida.

Abraços,

Graymalkin

Link para o comentário
Compartilhar em outros sites

  • 0

bom, to de volta, tinha desistido disso mas voltei a tona

seria o seguinte, eu tenho um textbox, insiro um nome nele e clico num "ok", e o nome vai pra um list, nesse list vai ter no maximo 32 pessoas

depois desse list, terei mais 8, e em cada um desses vai ter no maximo 4 pessoas

os nomes do primeiro list, eu quero que sejam sorteados para irem para os outros 4 lists

você poderia me ajudar?

Link para o comentário
Compartilhar em outros sites

  • 0

Cada item na listbox é identificado por um índice (um número), certo? Então, use Rnd() para gerar 32 valores aleatórios (de 0 a 31), e depois divida-os de acordo com a quantidade de listboxes. Como cada valor vai corresponder a um item da listbox, basta você pegar os itens e colocá-los nas outras listboxes.

Abraços,

Graymalkin

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,5k
×
×
  • Criar Novo...