Spielplan erstellen mit Javascript
Warning: WP_Syntax::substituteToken(): Argument #1 ($match) must be passed by reference, value given in /var/www/virtual/struebig/html/jstruebig/wordpress/wp-content/plugins/wp-syntax/wp-syntax.php on line 383
Meine vorherige Umsetzung des Kantenfärbungs Algorithmus nach Sigrid Knust habe ich noch einmal überarbeitet und etwas vereinfacht.
Der Code
Der folgende Code ist die Javascript Umsetzung des Algorithmus und gibt ein Array of Arrays zurück. Diese repräsentieren die Spieltage mit jeweils den Paarungen als Array. Der Parameter der Funktion ist die Anzahl der teilnehmenden Teams. Bei einer ungraden Anzahl von Teams wird ein Eintrag mit der Bezeichnung [Spielfrei]
hinzugefügt.
function round_robin(teams) { teams = parseInt(teams, 10); if(!teams || teams < 0) throw new TypeError('Parameter must be greater than zero'); if(teams % 2) teams++; var i, j, result = [], team_nr = []; for(i = 1; i < teams; i++) team_nr.push(i); for(i = 1; i < teams; i++) { var tmp = [], t1, t2; tmp.push( i % 2 ? [teams, team_nr[0]] : [team_nr[0], teams] ); Out('array: ' + team_nr.join(' ')+ '<br>'); for(j = 1; j < teams / 2 ; j++) { var t1 = team_nr[j]; var t2 = team_nr[teams - j -1]; tmp.push(!(j % 2) ?[t1, t2] : [t2, t1]); } result.push(tmp); team_nr.push(team_nr.shift()); } return result; } |
Beispiel
Je nach Anzahl der angeklickten Teams werden die Spielpaarungen berechnet. Die Rückgabewerte entsprechen dabei dem Index des Arrays mit den Namen.
Die Teams
Der Spielplan
ähnliche Artikel
Comments (0)
3874 mal gelesen.
3874 mal gelesen.
Noch keine Kommentare
Das Neuste
Kategorien
am meisten gelesen
zuletzt kommentiert
Archiv
Wortwolke
Firefox Drag&Drop Browser Datenschutz Animation about:config google LED Scroller OOP Tool Javascript prototype String linux Bugs Privatsphäre Wordpress LED Laufschrift überwachung