1. Este site usa cookies. Ao continuar a usar este site está a concordar com o nosso uso de cookies. Saber Mais.

ajuda C#

Discussão em 'Programação' iniciada por priank, 30 de Abril de 2008. (Respostas: 5; Visualizações: 1567)

  1. priank

    priank Power Member

    boas pessoal,
    eu tou a tentar fazer um programa tipo elifoot, mas nao sei como sortear equipas :S
    agradecia toda a ajuda possivel...brigada :)
     
  2. Symbio

    Symbio Power Member

    Boas! Ja pensaste em meter todas as equipas num contentor...tipo arraylist ou assim...Depois com o metodo Rand obtias 2 indices aleatorios. Esses dois idx eram as 2 equipas que se iam sortear...Fazias isto ate nao haver mais equipas...
    Cumps
     
  3. priank

    priank Power Member

    vou tentar...thx :)
     
  4. mj2p

    mj2p I'm Cool Cuz I Fold

    Como o Symbio ja disse, primeiro colocas todas as equipas num array (ou outro contentor). Depois, dependendo do numero de equipas que tiveres, deverás gerar dois numeros aleatoriamente, sendo que esses numeros corresponderão ao índice das equipas sorteadas.

    Para gerar numeros aleatórios, em C# eu uso a classe System.Random. O método Next() desta classe gera um numero aleatoriamente, sendo que aceita como parametros o limite minimo que se pode gerar e/ou o limite maximo do número que se pode gerar.

    Vá, cumps
     
  5. AliFromCairo

    AliFromCairo Power Member

    Boas, não é aconselhável usares os números aleatórios directamente como índices do array pois os número aleatórios podem ser sempre os mesmos (embora improvável), o que vai resultar em equipas repetidas. Um método mais elegante e eficiente (que não vai ter equipas repetidas), consiste em baralhar (shuffle) as n primeiras posições do array, onde n é o número de equipas a sortear. Em seguida, podes utilizar as n primeiras equipas do array no sorteio. Algo do género:

    Código:
    shuffle( equipas[], n )
    {
        for i = 1 to n
        {
            swap(equipas[i], random() % n)    
        }
    }
     
    shuffle ( {"A", "B", ..., "Z" }, 20 )
    
     
  6. toninho_77

    toninho_77 Power Member

    Boas, só agora vi o tópico eu também precisava de fazer algo idêntico ao elifoot mas bem mais simples, do género, duas equipas defrontam-se só, só mesmo para demonstrar uma simulação, alguém pode ajudar com um exemplo para eu tentar aqui, é que tentei chegar ao código do elifoot mas não consegui, e não faço ideia de como começar, mas só a simulação de um unico jogo bastava.
    Cumprimentos.
     

Partilhar esta Página