Este problema corresponde a la entrega intermedia de la práctica. Tened en cuenta que
esta no es la entrega definitiva de la práctica completa, ni siquiera es una entrega provisional de la práctica completa
en esta entrega se ha de proporcionar todo el código necesario (clases, programa principal y, opcionalmente, Makefile) para poder usar todas las funcionalidades de la práctica excepto las que tengan que ver con patrones: "nuevo_patron", "codificar_patron", "codificar_guardado_patron", "decodificar_patron" y "listar_patrones"
en esta entrega no pedimos carpetas generadas mediante
doxygen, pero los ficheros de las clases
pueden llevar todos los comentarios doxygen
que queráis; de hecho recomendamos que incluyáis las especificaciones de
todas las operaciones y que sean lo más definitivas posible
esta entrega no tendrá nota manual
Una secuencia de instrucciones y datos que siguen el formato del enunciado de la práctica y del juego de pruebas público.
Una secuencia de resultados que siguen el formato del enunciado de la práctica y del juego de pruebas público.
El Jutge prueba vuestras entregas mediante 4 juegos de pruebas:
sample: el juego de pruebas público
privat1: situaciones que no aparecen en el público
privat2: eficiencia1: rejilla normal, mensaje grande
privat3: eficiencia2: rejilla grande, mensaje grande
En un fichero llamado practica.tar tenéis
que entregar los ficheros .hh y .cc de las
clases y el programa principal. Opcionalmente, podéis entregar el
Makefile que estáis usando para generar y probar el ejecutable.
Tened en cuenta las siguientes restricciones:
el fichero que contiene el programa principal se ha de llamar
program.cc
el Makefile ha de generar un ejecutable llamado
program.exe
es importante que uséis las opciones de compilación definidas en
el menú Documentation
Compilers
PRO2 de www.jutge.org para funcionar en
igualdad de condiciones con el Jutge
no usar la opción -D_GLIBCXX_DEBUG o
usarla de forma incorrecta podrá ser penalizado
Producid el fichero practica.tar con la
instrucción Linux
tar -cvf practica.tar fitxer1 fitxer2 fitxer3 ...
desde el directorio/carpeta donde tengáis los ficheros que vais a
entregar. Os convendrá incluir en vuestro Makefile una regla con esta
instrucción, de forma que el .tar se pueda
generar ejecutando make practica.tar. Con eso
reduciréis el riesgo de error en sucesivas entregas. El Jutge no acepta
.tar donde los ficheros estén dentro de
carpetas. Recomendamos usar GNU tar para
reducir el riesgo de que el fichero
practica.tar sea incompatible con el
Jutge.
Input
10 Resistire_1 Cuando pierda todas las partidas. Resistire_2 Cuando duerma con la soledad. Resistire_3 Cuando se me cierren las salidas. Resistire_4 Y la noche no me deje en paz. Itaca_1 Quan surts per fer el viatge cap a Itaca Qualsevol_nit_1 Fa una nit clara i tranquila, Qualsevol_nit_2 hi ha la lluna que fa llum, Qualsevol_nit_3 els convidats van arribant Qualsevol_nit_4 i van omplint tota la casa Qualsevol_nit_5 de colors i de perfums. 2 4 4 1 3 3 2 2 4 4 1 6 9 4 2 2 4 3 1 4 4 5 1 1 3 1 5 5 5 6 6 0 listar_mensajes listar_rejillas nuevo_mensaje Resistire_1 Cuando tenga miedo del silencio. nuevo_mensaje Let_it_be_1 When I find myself in times of trouble, Mother Mary comes to me nm Let_it_be_2 Speaking words of wisdom, let it be. nuevo_mensaje vie_en_rose_1 Quand il me prend dans ses bras nm vie_en_rose_2 Il me parle tout bas nm vie_en_rose_3 Je vois la vie en rose nuevo_mensaje Hotel_California_5 So I called up the Captain, "Please bring me my wine". He said, "We haven't had that spirit here since nineteen sixty nine". And still those voices are calling from far away, wake you up in the middle of the night, just to hear them say... nueva_rejilla 6 6 4 4 2 4 3 1 4 2 5 5 1 5 nr 4 4 1 1 3 1 2 4 4 2 nueva_rejilla 4 4 1 2 3 2 3 4 1 4 nr 6 9 1 1 1 2 2 1 2 5 3 5 3 6 4 3 4 5 4 6 borra_mensaje Resistire_1 borra_mensaje vie_en_rose bm vie_en_rose_2 lm lr codificar_rejilla 1 Hola, amigo, que tal? codificar_rejilla 5 Hola, amigo, que tal? cr 2 Hola, amigo, que tal? codificar_guardado_rejilla Let_it_be_1 4 cgr Let_it_be_3 1 cgr vie_en_rose_1 3 cgr vie_en_rose_1 0 codificar_guardado_rejilla Qualsevol_nit_1 4 cgr Qualsevol_nit_1 1 cgr Resistire_2 2 cgr Resistire_2 3 cgr Itaca_1 2 cgr Hotel_California_5 4 cgr Hotel_California_5 1 decodificar_rejilla 4 Whnd oe mynf i n I t sfieitromlfubesler ,Mar me sMo ttyhe o co me decodificar_rejilla 2 a H ogol l,?a q u, a em ti dr 6 a H ogol l,?a q u, a em ti dr 3 a H ogol l,?a q u, a em ti dr 3 dCouuae adnrcmo ns e.d ollaa d dr 1 lnFiaata rucan,r ua iil n ta q dr 1 u Slcpeod a I tl"ahipPne, tlC ea bagrm smeiy e ni"we.d isn ,ea Hhh"naa'Wtevd eh trseihtaprt eiec ieensei nnt n ysn Aei"xnnt.di l hlvosst oieitiaccrnaelseg l y f f,arwoa mawrnyauo pk eut ih tde dho fmlei ettnu,ositg h hj.te h.saare. y m fin
Output
#listar_mensajes Itaca_1 "Quan surts per fer el viatge cap a Itaca" Qualsevol_nit_1 "Fa una nit clara i tranquila," Qualsevol_nit_2 "hi ha la lluna que fa llum," Qualsevol_nit_3 "els convidats van arribant" Qualsevol_nit_4 "i van omplint tota la casa" Qualsevol_nit_5 "de colors i de perfums." Resistire_1 "Cuando pierda todas las partidas." Resistire_2 "Cuando duerma con la soledad." Resistire_3 "Cuando se me cierren las salidas." Resistire_4 "Y la noche no me deje en paz." #listar_rejillas Rejilla 1: 4 4 (1,3) (2,4) (3,2) (4,1) (1,2) (2,1) (3,3) (4,4) (1,4) (2,3) (3,1) (4,2) (1,1) (2,2) (3,4) (4,3) Rejilla 2: 6 9 (1,3) (1,5) (2,4) (3,1) (4,2) (4,4) (5,1) (5,5) (6,6) (1,6) (2,1) (2,5) (3,2) (3,4) (4,1) (5,4) (6,3) (6,5) (1,1) (2,2) (2,6) (3,3) (3,5) (4,6) (5,3) (6,2) (6,4) (1,2) (1,4) (2,3) (3,6) (4,3) (4,5) (5,2) (5,6) (6,1) #nuevo_mensaje Resistire_1 error: ya existe un mensaje con ese identificador #nuevo_mensaje Let_it_be_1 11 #nm Let_it_be_2 12 #nuevo_mensaje vie_en_rose_1 13 #nm vie_en_rose_2 14 #nm vie_en_rose_3 15 #nuevo_mensaje Hotel_California_5 16 #nueva_rejilla error: dimensiones incorrectas de la rejilla #nr error: la rejilla con sus giros no cubre todas las posiciones N x N #nueva_rejilla 3 #nr 4 #borra_mensaje Resistire_1 15 #borra_mensaje vie_en_rose error: el mensaje no existe #bm vie_en_rose_2 14 #lm Hotel_California_5 "So I called up the Captain, "Please bring me my wine". He said, "We haven't had that spirit here since nineteen sixty nine". And still those voices are calling from far away, wake you up in the middle of the night, just to hear them say..." Itaca_1 "Quan surts per fer el viatge cap a Itaca" Let_it_be_1 "When I find myself in times of trouble, Mother Mary comes to me" Let_it_be_2 "Speaking words of wisdom, let it be." Qualsevol_nit_1 "Fa una nit clara i tranquila," Qualsevol_nit_2 "hi ha la lluna que fa llum," Qualsevol_nit_3 "els convidats van arribant" Qualsevol_nit_4 "i van omplint tota la casa" Qualsevol_nit_5 "de colors i de perfums." Resistire_2 "Cuando duerma con la soledad." Resistire_3 "Cuando se me cierren las salidas." Resistire_4 "Y la noche no me deje en paz." vie_en_rose_1 "Quand il me prend dans ses bras" vie_en_rose_3 "Je vois la vie en rose" #lr Rejilla 1: 4 4 (1,3) (2,4) (3,2) (4,1) (1,2) (2,1) (3,3) (4,4) (1,4) (2,3) (3,1) (4,2) (1,1) (2,2) (3,4) (4,3) Rejilla 2: 6 9 (1,3) (1,5) (2,4) (3,1) (4,2) (4,4) (5,1) (5,5) (6,6) (1,6) (2,1) (2,5) (3,2) (3,4) (4,1) (5,4) (6,3) (6,5) (1,1) (2,2) (2,6) (3,3) (3,5) (4,6) (5,3) (6,2) (6,4) (1,2) (1,4) (2,3) (3,6) (4,3) (4,5) (5,2) (5,6) (6,1) Rejilla 3: 4 4 (1,2) (1,4) (3,2) (3,4) (1,1) (1,3) (3,1) (3,3) (2,1) (2,3) (4,1) (4,3) (2,2) (2,4) (4,2) (4,4) Rejilla 4: 6 9 (1,1) (1,2) (2,1) (2,5) (3,5) (3,6) (4,3) (4,5) (4,6) (1,3) (1,4) (2,2) (2,3) (2,4) (4,4) (5,1) (6,1) (6,2) (3,1) (3,2) (3,4) (4,1) (4,2) (5,2) (5,6) (6,5) (6,6) (1,5) (1,6) (2,6) (3,3) (5,3) (5,4) (5,5) (6,3) (6,4) #codificar_rejilla 1 " ,Hi qgoolaua,em ? t a l " #codificar_rejilla 5 error: la rejilla no existe #cr 2 "a H ogol l,?a q u, a em ti" #codificar_guardado_rejilla Let_it_be_1 4 "Whnd oe mynf i n I t sfieitromlfubesler ,Mar me sMo ttyhe o co me" #cgr Let_it_be_3 1 error: el mensaje no existe #cgr vie_en_rose_1 3 "dQ u pmrialnee nnds ersa dsa sb " #cgr vie_en_rose_1 0 error: la rejilla no existe #codificar_guardado_rejilla Qualsevol_nit_1 4 "Fat a, clau t rnaan rniaq u i il" #cgr Qualsevol_nit_1 1 "lnFiaata rucan,r ua iil n ta q" #cgr Resistire_2 2 "ldC.uera am nas o cd o l eod dna u" #cgr Resistire_2 3 "dCouuae adnrcmo ns e.d ollaa d " #cgr Itaca_1 2 " eQ us ecaplne rva ps iuaafr Itegrt t a c a " #cgr Hotel_California_5 4 "Soed " upIP Cla cpta lltaeasihee n,brmy "i winW Heeg smne ea hai".ved,n'hanctt s et hhaerdp tienin rietsiee nthnine onds sistx"ty.ie vl Aoil cealayslin ,om arfaeg c rwak fre awyo t nuhe ileg upof mini ht,tdd jheusar t th ay .to.. ehem s " #cgr Hotel_California_5 1 "u Slcpeod a I tl"ahipPne, tlC ea bagrm smeiy e ni"we.d isn ,ea Hhh"naa'Wtevd eh trseihtaprt eiec ieensei nnt n ysn Aei"xnnt.di l hlvosst oieitiaccrnaelseg l y f f,arwoa mawrnyauo pk eut ih tde dho fmlei ettnu,ositg h hj.te h.saare. y m" #decodificar_rejilla 4 "When I find myself in times of trouble, Mother Mary comes to me " #decodificar_rejilla 2 "Hola, amigo, que tal? " #dr 6 error: la rejilla no existe #dr 3 error: la dimension del mensaje es inadecuada para la rejilla #dr 3 "Cuando duerma con la soledad. " #dr 1 "Fa una nit clara i tranquila, " #dr 1 "So I called up the Captain, "Please bring me my wine". He said, "We haven't had that spirit here since nineteen sixty nine". And still those voices are calling from far away, wake you up in the middle of the night, just to hear them say... "