Ordena eventos

Escribe un programa que lea de la entrada estándar (con cin) los datos
de una serie de eventos. Tal y como se define en el enunciado de la
práctica 2 de Programación Avanzada y Estructuras de Datos, un evento
consta de una fecha y un mensaje. Tras leer los datos, el programa
deberá imprimir la información de los eventos ordenada de forma
cronológica. Si en los datos de entrada hay más de un evento para la
misma fecha, sólo deberá considerarse el primer evento que aparezca en
la entrada.

Este problema se soluciona fácilmente teniendo bien implementados los
métodos insertarEvento y aCadena de la clase Calendario. Simplemente
habrá que leer cada evento de la entrada y llamar a InsertarEvento con
el evento leído. Cuando se hayan leído todos los eventos de la entrada
estándar, habrá que llamar al método aCadena. Se proporciona un programa
principal (función main) que se encarga de la lectura de las fechas y de
invocar al método aCadena. Por tanto, para superar este problema sólo es
necesario que estén bien implementados los métodos mencionados.

Los ficheros necesarios para entregar la solución al problema están
disponibles en la plataforma Moodle, en la pàgina
“Instrucciones para subir la solución al problema público de la práctica 2”
bajo la sección “Práctica 2: Implementación de TADs lineales en C++ ”.
Los pasos a seguir para realizar una entrega son los siguientes:

1. Asegúrate de que en el directorio actual se encuentran los ficheros
Fecha.h, Fecha.cc, Evento.h, Evento.cc, Calendario.h y Calendario.cc.

2. Descarga los ficheros genera-entrega-ordenaEventos.sh y
main-ordenaEventos.cc  al mismo directorio

3. Ejecuta la orden bash genera-entrega-ordenaEventos.sh

4. Si todo ha ido bien, debería haberse generado un fichero entrega.cc,
que es el que deberás subir a jutge.org

Cada vez que modifiques código de tu práctica, deberás repetir los pasos
3 y 4.

Entrada

[No es necesario preocuparse de este formato] Un evento por línea, más
una línea adicional para marcar el final. Por cada evento, primero
aparecerán el día, mes y año de la fecha, separados por un espacio en
blanco. A continuación, el carácter ‘’. Después de ese carácter, la
descripción del evento. Para marcar el final, la última línea contendrá
únicamente el carácter 0.

Salida

[No es necesario preocuparse de este formato] Los eventos ordenados
cronológicamente, uno por línea, según se describe en la especificación
del método aCadena de la clase Calendario.

Información del problema

Autoría: Víctor M. Sánchez-Cartagena

Generación: 2026-01-25T20:00:40.815Z

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