|
|
@@ -4,10 +4,12 @@ problema losMasFracasados (j: JJOO, p:Pais) = result:[Atleta]{
|
|
|
//ganaron medallas en las competencias acabadas hasta ahora,
|
|
|
//ordenados desde el que en más competencias participó hasta el que que menos.
|
|
|
|
|
|
- asegura noGanaronMedallas: (paraTodo x <- [ciaNumber(ranking(comp)[0]) != ciaNumber(atl) && ciaNumber(ranking(comp)[1]) != ciaNumber(atl) && ciaNumber(ranking(comp)[2]) != ciaNumber(atl) | atl <- result, comp <- todasLasCompetencias(j), finalizada(comp)]) x;
|
|
|
+ asegura noGanaronMedallas: (paraTodo x <- [ganoMedallas(atl, comp) | atl <- result, comp <- todasLasCompetencias(j), finalizada(comp)]) x;
|
|
|
asegura todosDelPais: (paraTodo x <- result) nacionalidad(x) == p;
|
|
|
asegura enOrden: (paraTodo i <- [0..|result|-2]) competenciasEnLasQueParticipó(j, result[i]) >= competenciasEnLasQueParticipó(j, result[i+1]);
|
|
|
}
|
|
|
|
|
|
aux competenciasEnLasQueParticipó(j: JJOO, a:Atleta) : int =
|
|
|
long([z | z<- todasLasCompetencias(j), en(a, participantes(z))]);
|
|
|
+
|
|
|
+aux ganoMedallas(atl: Atleta, comp: Competencia) : Bool = (ciaNumber(ranking(comp)[0]) != ciaNumber(atl) && ciaNumber(ranking(comp)[1]) != ciaNumber(atl) && ciaNumber(ranking(comp)[2]) != ciaNumber(atl));
|