martes, 10 de marzo de 2009

AAP bloque T1.4 ejercicio1: 1.Modificar el programa anterior (cualquiera de ellos) para que contabilice el número de partidos ganados, empatados ..

Aqui pongo los códigos utilizados, el primero es el base donde se ven las matrices asociativas y el segundo es una función para imprimir arrays, también se ha utilizado el script "partido.js", los script se listan a continuación:

load('Partido.js');
load('imprimirArray.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;
var perdidos=new Array;
var empatados=new Array;
var resultados=new Array;
for ( var i in equipos ) {
ganados[equipos[i]]=0;
empatados[equipos[i]]=0;
perdidos[equipos[i]]=0;
resultados[equipos[i]]=0;
}
for ( var i = 0; i < quinielas.length; i ++ ) {
for ( var j = 0;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];
++perdidos[visitante];
break;
case 'x':
resultados[local]+=1;
resultados[visitante]+=1;
++empatados[visitante];
++empatados[local];
break;
default:
resultados[visitante]+=3;
++perdidos[local];
++ganados[visitante];
}
}
}


var titulo=['Equipo','Puntos','Jugados','Ganados','Empatados','Perdidos'];
var equipoArray= [];
var arrayResultados=[];
arrayResultados[0]=titulo;
var contador=0;
for (var i in resultados){
++contador;
equipoArray=[i,resultados[i],(ganados[i]+empatados[i]+perdidos[i]),ganados[i],empatados[i],perdidos[i]];
arrayResultados[contador]=equipoArray;
}

imprimirArray(arrayResultados);



Y aquí el imprimirArray.js:



function imprimirArray(matriz){

var filas=matriz.length;
var columnas=matriz[0].length;

print( marca('table'));
for ( i=0;ifilas;++i ) {
print( marca( 'tr' ));
for ( j=0;j<columnas;++j ) {
print (celda(matriz[i][j]));
}
print ( finmarca('tr'));
}
print (finmarca('table'));

}


function marca( m ) {
return "<"+m+">";
}

function finmarca( m ) {
return "</"+m+">";
}

function celda( contenido ) {
return marca("td")+contenido+finmarca("td");
}

Por último muestro el resultado:

Partido 0: Atleti - Betis = 1
Partido 1: Madrid - Geta = 2
Partido 2: Graná - Barça = x
Partido 3: Depor - Sevilla = 1









































































EquipoPuntosJugadosGanadosEmpatadosPerdidos
Madrid1710523
Barça1210262
Atleti2110631
Geta1410424
Betis1310415
Depor1310415
Sevilla1010244
Graná910235


No hay comentarios: