|
Hola, me piden que haga un script para generar todo un calendario de una competición por equipos. Tipo liga de futbol Jornada 1 equipoA-Equipo B EquipoC-Equipo D... Jornada 2 EquipoA-EquipoC EquipoB-EquipoD... Jornada 3 Equpo A-EquipoD EquipoB-EquipoC... Los equipos son variables según los grupos así que puede que en un grupo haya 20 equipos y en otro 40. ¿saben de algún script en php/asp/javascript/actionscript (me da igual el lenguaje) que realice esta funcion? Muchas gracias |
1 Tutorial |
|
N es el numero de jugadores. Código : var N:Number = 14; //ATENCIÓN!! "N" DEBE SER PAR! (2,4,8,12,20,...)
var g1:Array = new Array();
var g2:Array = new Array();
//crea los grupos
for (var i = 0; i<((N-1)/2); i++) {
g1.push([i]);
g1[i] = i;
//
g2.push([i]);
g2[i] = N-i-1;
}
//hace girar los grupo para el siguiente round
for (var j = 0; j<N-1; j++) {//j son los rounds
//anuncia los grupos
trace("Round "+j);
trace(g1);
trace(g2);
var temp1 = g2[0];
var temp2 = g1[(N/2)-1];
for (var k = 0; k<N/2; k++) {
if (k == (N/2)-1) {
g1[1] = temp1;
g2[(N/2)-1] = temp2;
} else {
g1[(N/2)-1-k] = g1[(N/2)-1-k-1];
g2[k] = g2[k+1];
}
}
}Esto te da este Output: Round 0 0,1,2,3,4,5,6 13,12,11,10,9,8,7 Round 1 0,13,1,2,3,4,5 12,11,10,9,8,7,6 Round 2 0,12,13,1,2,3,4 11,10,9,8,7,6,5 Round 3 0,11,12,13,1,2,3 10,9,8,7,6,5,4 Round 4 0,10,11,12,13,1,2 9,8,7,6,5,4,3 Round 5 0,9,10,11,12,13,1 8,7,6,5,4,3,2 Round 6 0,8,9,10,11,12,13 7,6,5,4,3,2,1 Round 7 0,7,8,9,10,11,12 6,5,4,3,2,1,13 Round 8 0,6,7,8,9,10,11 5,4,3,2,1,13,12 Round 9 0,5,6,7,8,9,10 4,3,2,1,13,12,11 Round 10 0,4,5,6,7,8,9 3,2,1,13,12,11,10 Round 11 0,3,4,5,6,7,8 2,1,13,12,11,10,9 Round 12 0,2,3,4,5,6,7 1,13,12,11,10,9,8 Los "combates" deben ser; por ejemlo, en el ultimo round: 0 contra 1, 2 contra 13, 3 contra 12, etc. Por cierto, ¿lo pongo en la wikipedia? Veo que no está |
1 Tutorial |