florian: KO SYSTEM

hallo!!

ich habe ein array() mit spieler IDs drin (anzahl: gerade). nun möchte ich matches für ein ko system erstellen. das heisst jedem spieler wird ein anderer zugeordnet. nur weiss ich nicht wie ich das machen kann..wäre glücklich wenn mir da einer helfen kann. bei google habe ich nämlich leider nichts passendes gefunden.

vielen dank,
flo

  1. Hi,

    na ja, ohne großes Überlegen fallen mir da zwei Varianten ein:

    1. Array nach dem Zufall durchmischen und in einer Schleife immer zwei aufeinanderfolgende Einträge verwenden
    2. Einen Zufallsgenerator laufen lassen, eine Zahl zwischen 1..Länge des Arrays ermitteln, das Element nehmen und aus dem Array entfernen.

    Variante (1) klingt effizienter... Sieh dir dazu z.B. die Funktion shuffle an.

    MfG
    Rouven

    --
    -------------------
    ss:) zu:) ls:& fo:) de:< va:{ ch:? sh:) n4:( rl:? br:$ js:| ie:) fl:(
  2. echo $begrüßung;

    ich habe ein array() mit spieler IDs drin (anzahl: gerade). nun möchte ich matches für ein ko system erstellen. das heisst jedem spieler wird ein anderer zugeordnet.

    Etwas genauer müsstest du das schon definieren. Tritt einfach "nur" jeder gegen jeden an oder ist das ganze Procedere komplizierter?

    Spieler 1 tritt an gegen Spieler 2 bis n
    Spieler 2 tritt an gegen Spieler 3 bis n
    Spieler 3 tritt an gegen Spieler 4 bis n
    ...
    Spieler n-1 tritt an gegen Spieler n bis n

    Das lässt sich mit zwei verschachtelten for-Schleifen durchlaufen.

    echo "$verabschiedung $name";