punto 12 1.0 KB

1234567891011121314
  1. 12.
  2. problema stevenBradbury (j: JJOO) = result : Atleta {
  3. //Requiere que al menos una competencia ya haya finalizado (y, por lo tanto, se haya entregado un oro)
  4. requiere algunOro: long([comp | comp <- todasLasCompetencias(j), finalizada(comp)&&|ranking(comp)|>0])>0;
  5. //Asegura que result haya ganado un oro
  6. asegura ganoOro: existe(f <- [ranking(comp)[0] | comp <- todasLasCompetencias(j), finalizada(comp)&&|ranking(comp)|>0]) ciaNumber(result)==ciaNumber(f);
  7. //Asegura que entre todos los ganadores de oro, el result es el que tiene la menor habilidad en alguna de las medallas que ganó.
  8. asegura esElPeor: existe(dep <- deportesEnLosQueGano(j, result)) paraTodo(f <- [ranking(comp)[0] | comp <- todasLasCompetencias(j), finalizada(comp)&&|ranking(comp)|>0]) capacidad(result, dep) <= capacidad(f, prm(categoria(comp));
  9. }
  10. aux deportesEnLosQueGanoOro(j: JJOO, a: Atleta) : [Deportes] =
  11. [prm(categoria(comp)) | comp <- todasLasCompetencias(j), finalizada(comp)&&|ranking(comp)|>0&&ciaNumber(ranking(comp)[0])==ciaNumber(a)];