lunes, 23 de marzo de 2009

AAP Bloque T1.4 ejercicio1:

Modificar el programa anterior (cualquiera de ellos) para que contabilice el número de partidos ganados, empatados y perdidos.

Yo he añadido que se ordenen, ademas, por los puntos de la clasificacion:
#!/usr/bin/smjs


load('Partido.js');

var equipos= new Array('Madrid', 'Barça', 'Atleti', 'Geta', 'Betis', 'Depor', 'Sevilla', 'Graná');

function jornada( estosEquipos ) {

var equiposAqui = new Array;
equiposAqui = equiposAqui.concat(estosEquipos);
var midsize = equiposAqui.length/2;
var quiniela = new Array( midsize );
var unox2 = new Array( '1','x','2');
for ( var i=0; i < midsize ; i++ ) {
var equipo1 = equiposAqui.splice(Math.floor( equiposAqui.length*Math.random()) , 1);
var equipo2 = equiposAqui.splice(Math.floor( equiposAqui.length*Math.random()), 1);
quiniela[i] = new Partido( equipo1, equipo2 );
quiniela[i].setResultado( unox2[Math.floor( 3*Math.random()) ]);
}
return quiniela;
}


var quinielas = new Array;
for ( var i = 0; i < 10; i ++ ) {
quinielas[i] = jornada( equipos );
}

var ganados= new Array;
for (var i in equipos) {
ganados[equipos[i]]=0;
}
var perdidos= new Array;
for (var i in equipos) {
perdidos[equipos[i]]=0;
}
var empatados= new Array;
for (var i in equipos) {
empatados[equipos[i]]=0;
}
var resultados= new Array;
for ( var i in equipos ) {
resultados[equipos[i]]=0;
}
for ( var i = 0; i < quinielas.length; i ++ ) {
for ( var j = 0;j < quinielas[i].length; j ++ ) {
var local = quinielas[i][j].local;
var visitante = quinielas[i][j].visitante;
var resultado = quinielas[i][j].resultado;
switch (resultado) {
case '1':
resultados[local]+=3;
ganados[local]+=1;
perdidos[visitante]+=1;
break;
case 'x':
resultados[local]+=1;
resultados[visitante]+=1;
empatados[local]+=1;
empatados[visitante]+=1;
break;
default:
resultados[visitante]+=3;
ganados[visitante]+=1;
perdidos[local]+=1;
}
}
}
var equipo;
var orden = new Array;
var k=0;
var clasificacion = new Array;
for (var i in equipos) {
var max_punt = 0;
for (var j in resultados) {
if (resultados[j]>max_punt) {
equipo = j;
max_punt = resultados[j];
}
}
orden[k] = equipo;
clasificacion[equipo] = resultados[equipo];
resultados[equipo]=0;
k++;
}

print("Equipo: Pts : G : E : P");
for ( var i in orden ) {
print( orden[i] + ": " + clasificacion[orden[i]] + " : " + ganados[orden[i]] + " : " + empatados[orden[i]] + " : " + perdidos[orden[i]])
}

No hay comentarios:

Publicar un comentario