Control PRO2 - Torn 1 - Problema 2 (primavera 2019)

Volem una operació nova per fer-la servir al context de les classes Cjt_estudiants i Es­tu­diant que heu vist al laboratori. Concretament, volem poder escriure conjunts d’estudiants en ordre decreixent per nota. En cas d’empat, escriurem primer els estudiants amb DNI més petit. Els estudiants sense nota es tracten com si la seva nota fos -1.

Hem optat per afegir dues noves operacions que no pertanyen a cap classe amb la següent especificació:

void escriure_nota_decr(const Cjt_estudiants& c) {
  /* Pre: cert */
  /* Post: s'han escrit pel canal estàndar de sortida els estudiants
     de c en ordre descendent de nota i, en cas d'empat, en ordre
     ascendent per DNI */

bool nota_decr(const Estudiant& a, const Estudiant& b) {
  /* Pre: cert */
  /* Post: el resultat es cert si la nota d'a es mes gran que la de b
     o, si son iguals, si el dni d'a es mes petit que el de b */

Observació

Heu de lliurar un fitxer solution.cc amb una implementació eficient de les operacions escriure_nota_decr i nota_decr. Aquest fitxer no pot accedir als elements privats de les classes Cjt_estudiants i Es­tu­diant. Òbviament, sí que pot fer servir les operacions públiques de les versions que us donem d’ambdues.

A l’apartat Public files del Jutge (icona del gatet) us proveïm amb una plantilla pel fitxer solution.cc que només cal completar. A més, trobareu material addicional, tot comprimit en un fitxer .tar. Podeu descomprimir aquest fitxer amb la comanda

   tar -xvf nom_fitxer.tar

Aquest material addicional consisteix en els següents fitxers:

És fonamental que la solució sigui eficient en temps i espai. No es pot emprar cap estructura de dades que no hagi aparegut a les sessions 1-4 de laboratori. Sí que es pot fer servir un vector auxiliar i l’operació sort.
 
Quan feu els enviaments el Jutge us indicarà quants jocs de proves passeu i de quin tipus (public o privat). El joc de proves anomenat public s’explica al fitxer llegeixme.txt. El privat1 és molt semblant al public. Els privat2 i privat3 proven situacions especials.

Informació del problema

Autoria: Professors de PRO2

Generació: 2026-01-25T21:23:23.999Z

© Jutge.org, 2006–2026.
https://jutge.org