Hallo,
Ik ben met een script bezig waarbij ik er niet helemaal uitkom met de logica om het te maken (bedenken)
Inleiding:
Ik heb een site waarop mensen met Xbox360 competities kunnen doen voor Fifa10 (nu fifa 11). Hierop kunnen moderators competities aanmaken, teams en spelers toevoegen en vervolgens maken ze handmatig alle fixtures (wedstrijden) aan die gespeeld moeten worden.
Vervolgens kan 1 van de 2 spelers van een wedstrijd de uitslag invullen, die ze online hebben gespeeld, en de stand wordt dan automatisch helemaal bijgewerkt.
Dit werkt allemaal goed, en de site heeft nu ook al 200 leden, dus tijd voor verbetering/uitbreiding.
Wat wil ik maken: een script (PHP/MYSQL , maar dat is verder niet van belang) waarbij het wedstrijdschema automatisch wordt gegenereerd (nu wordt dit per competitie door een admin helemaal handmatig aangemaakt, en dit kunnen nogal wat wedstrijden zijn).
Kort om: een admin maakt een nieuwe competitie aan met bijvoorbeeld 10 teams (aantal is altijd variabel maar dient wel altijd een even getal te zijn).
vaste waarde is dat ieder team altijd 2x tegen elkaar speelt.
Vervolgens vult de admin in, hoeveel wedstrijden per week gespeeld dienen te worden (ook variabel en altijd even getal) bijvoorbeeld het getal 4.
Ik bereken vervolgens dat er dus per team (aantal_teams x 2 (de vaste waarde) ) -2 (je speelt nooit tegen jezelf) gespeeld dient te worden.
Kort om: 10x2-2 = 18 wedstrijden per team.
Dan reken ik uit hoeveel weken er voor desbetreffende competitie gespeeld gaan worden.
aantal_weken = 18/4 = 4,5 (naar boven afronden) dus 5 weken.
met al deze info wil ik de wedstrijden gaan creëren.
Wat lijkt me dan het beste:
Ik kom er alleen echt niet uit, hoe ik ervoor zorg dat ik de array zo doorloop dat alle mogelijke combinaties doorlopen worden.
Ik ben met een script bezig waarbij ik er niet helemaal uitkom met de logica om het te maken (bedenken)
Inleiding:
Ik heb een site waarop mensen met Xbox360 competities kunnen doen voor Fifa10 (nu fifa 11). Hierop kunnen moderators competities aanmaken, teams en spelers toevoegen en vervolgens maken ze handmatig alle fixtures (wedstrijden) aan die gespeeld moeten worden.
Vervolgens kan 1 van de 2 spelers van een wedstrijd de uitslag invullen, die ze online hebben gespeeld, en de stand wordt dan automatisch helemaal bijgewerkt.
Dit werkt allemaal goed, en de site heeft nu ook al 200 leden, dus tijd voor verbetering/uitbreiding.
Wat wil ik maken: een script (PHP/MYSQL , maar dat is verder niet van belang) waarbij het wedstrijdschema automatisch wordt gegenereerd (nu wordt dit per competitie door een admin helemaal handmatig aangemaakt, en dit kunnen nogal wat wedstrijden zijn).
Kort om: een admin maakt een nieuwe competitie aan met bijvoorbeeld 10 teams (aantal is altijd variabel maar dient wel altijd een even getal te zijn).
vaste waarde is dat ieder team altijd 2x tegen elkaar speelt.
Vervolgens vult de admin in, hoeveel wedstrijden per week gespeeld dienen te worden (ook variabel en altijd even getal) bijvoorbeeld het getal 4.
Ik bereken vervolgens dat er dus per team (aantal_teams x 2 (de vaste waarde) ) -2 (je speelt nooit tegen jezelf) gespeeld dient te worden.
Kort om: 10x2-2 = 18 wedstrijden per team.
Dan reken ik uit hoeveel weken er voor desbetreffende competitie gespeeld gaan worden.
aantal_weken = 18/4 = 4,5 (naar boven afronden) dus 5 weken.
met al deze info wil ik de wedstrijden gaan creëren.
Wat lijkt me dan het beste:
- Ik gooi de 10 teams in een array
- ik neem het 1e element uit de array (1e team dus), en ik neem het 2e element (2e team)
- Ik controleer of deze fixture al bestaat, zo nee, dan controleer ik of voor week1 deze teams al 4 fixtures hebben, zo ja, dan doe ik week+1 (dus week2) en controleer ik opnieuw. Zo nee, dan voeg ik de fixture toe in desbetreffende week.
Ik kom er alleen echt niet uit, hoe ik ervoor zorg dat ik de array zo doorloop dat alle mogelijke combinaties doorlopen worden.