El objetivo en este examen será modificar dos aspectos de tu solución de la práctica. Concretamente deberás
Los detalles están descritos con precisión en el documento enunciado_examen.pdf que forma parte del archivo public.tar que puedes descargar en esta página (icono del gatito). Verás que tendrás que modificar elementos ya existentes en tu práctica, tanto del main como de algunas clases.
IMPORTANTE: Este problema de Jutge es el único canal disponible para realizar la entrega del examen de la práctica. Ten en cuenta que
Observación Recomendamos que hagas una copia “limpia” de tu práctica en un subdirectorio aparte y en esa copia lleves a cabo todos los cambios.
Verifica que todos los módulos compilan sin errores, que el proceso de montaje da un archivo ejecutable correcto y que el program.exe pasa el juego de pruebas público suministrado.
Comprueba que tu Makefile genera el fichero program.exe y crea el fichero .tar para hacer el envío al Jutge. Asegúrate que entregas el fichero .tar con la solución del examen, no la solución original. No es necesario incluir la carpeta con la documentación en Doxygen ni, en su caso, la de la competencia tranversal.
El Jutge prueba tus entregas mediante 4 juegos de pruebas que, salvo por un comando que cambia ligeramente, tienen la misma sintaxis que los de la práctica.
En un fichero llamado practica.tar debes entregar
Ten en cuenta las siguientes restricciones:
Produce el fichero practica.tar con la instrucción Linux
tar -cvf practica.tar fitxer1 fitxer2 fitxer3 ...
desde el directorio/carpeta donde tengas los ficheros que vas a entregar. Incluye esta instrucción en tu Makefile, de forma que el .tar se pueda generar ejecutando make practica.tar. Con eso reduciras 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
2
7 0 -1 12 -1 -1 -1
94 31 -1 -1 63 -1 -1
listar_mensajes
listar_rejillas
listar_patrones
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
nuevo_patron
1 2 4 -1 -1 -1 3 -1 5 -1 -1
np
22 88 77 55 -1 -1 -1 -1 -1
borra_mensaje Resistire_1
borra_mensaje vie_en_rose
bm vie_en_rose_2
lm
lr
lp
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
Wh ondef tn imn I t rfioiysemublfesle r , MmeasMo tt he ory come
decodificar_rejilla 2
agHoo l,l ?a ,q u ae m t i
dr 6
agHoo l,l ?a ,q u ae m t i
dr 3
agHoo l,l ?a ,q u ae m t i
dr 3
aC uudeocaonr md.n e ds l aaodl
dr 1
nlFiaata r ucnar, u aiil ntaq
dr 1
uSlpceod aI lta"hiPpne, ltC aeb agmr smeyi en "iwed. isn, eaH hh"naa'Wtedv e htresihtarpt iece ieensein ntn y snA ei"xnnt.idl hvlossto ietiaiccnraelsge l yf ,farwo amarwynau opk etu i hdte hdo fmeli e ttnuo,sitg h jht.e .hsaar.e ym
codificar_patron 2 15 10
Al despertar Gregorio Samsa una man~ana, tras un suen~o intranquilo, se encontro' en su cama convertido en un monstruoso insecto.
cp 0 15 10
No por mucho madrugar...
cp 3 20 30
amanece ma's temprano
cp 4 32 27
no more bla, bla, bla; no more bla, bla, bla; no more bla, bla, bla
codificar_guardado_patron Resistire_2 1 31 26
codificar_guardado_patron Let_it_be_2 5 10 5
cgp Hotel_California_5 4 64 59
cgp Hotel_California_1 4 64 58
cgp Itaca_1 1 23 28
cgp Qualsevol_nit_5 2 3 3
cgp Let_it_be_1 3 7 2
decodificar_patron 3 20 30
bodr$"j>, E2>3$,/1 -p
decodificar_patron 20 3 3
bodr$"j>, E2>3$,/1 -p
dp 2 3 3
c%_b/Ln2S~)_c%_o%Re5MrM
dp 1 29 26
Ju{)p*:~0 -({:}*):'{:.*' ~{~H
dp 4 32 27
%h;[+.!W}(|G;}(|G;}(|V;*+;)+.!;}#ZGm}(|c;}(|V;*+;)+.!;}(|G;}(|G;xe|
dp 2 15 10
@,_no}zo|~k|*Q|d'O|sy*]kw}k* x`?Mkx)kxk6*~|k}~5N*} ox)y*sx~|`.Q svy6*}o*oxmn.T|y1*ox*} *mkl!_myx!o|~sny*om?Ux*wyx}~| y}y~)N}om~y8
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,1) (2,2) (3,4) (4,3)
(1,4) (2,3) (3,1) (4,2)
(1,2) (2,1) (3,3) (4,4)
Rejilla 2:
6 9
(1,3) (1,5) (2,4) (3,1) (4,2) (4,4) (5,1) (5,5) (6,6)
(1,2) (1,4) (2,3) (3,6) (4,3) (4,5) (5,2) (5,6) (6,1)
(1,1) (2,2) (2,6) (3,3) (3,5) (4,6) (5,3) (6,2) (6,4)
(1,6) (2,1) (2,5) (3,2) (3,4) (4,1) (5,4) (6,3) (6,5)
#listar_patrones
Patron 1:
(7(0()(12()()))())
Patron 2:
(94(31()())(63()()))
#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
#nuevo_patron
3
#np
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,1) (2,2) (3,4) (4,3)
(1,4) (2,3) (3,1) (4,2)
(1,2) (2,1) (3,3) (4,4)
Rejilla 2:
6 9
(1,3) (1,5) (2,4) (3,1) (4,2) (4,4) (5,1) (5,5) (6,6)
(1,2) (1,4) (2,3) (3,6) (4,3) (4,5) (5,2) (5,6) (6,1)
(1,1) (2,2) (2,6) (3,3) (3,5) (4,6) (5,3) (6,2) (6,4)
(1,6) (2,1) (2,5) (3,2) (3,4) (4,1) (5,4) (6,3) (6,5)
Rejilla 3:
4 4
(1,2) (1,4) (3,2) (3,4)
(2,2) (2,4) (4,2) (4,4)
(2,1) (2,3) (4,1) (4,3)
(1,1) (1,3) (3,1) (3,3)
Rejilla 4:
6 9
(1,1) (1,2) (2,1) (2,5) (3,5) (3,6) (4,3) (4,5) (4,6)
(1,5) (1,6) (2,6) (3,3) (5,3) (5,4) (5,5) (6,3) (6,4)
(3,1) (3,2) (3,4) (4,1) (4,2) (5,2) (5,6) (6,5) (6,6)
(1,3) (1,4) (2,2) (2,3) (2,4) (4,4) (5,1) (6,1) (6,2)
#lp
Patron 1:
(7(0()(12()()))())
Patron 2:
(94(31()())(63()()))
Patron 3:
(1(2(4()())())(3()(5()())))
Patron 4:
(22(88(77(55()())())())())
#codificar_rejilla 1
", Hiq gooluaa,me? t a l "
#codificar_rejilla 5
error: la rejilla no existe
#cr 2
"agHoo l,l ?a ,q u ae m t i"
#codificar_guardado_rejilla Let_it_be_1 4
"Wh ondef tn imn I t rfioiysemublfesle r , MmeasMo tt he ory come"
#cgr Let_it_be_3 1
error: el mensaje no existe
#cgr vie_en_rose_1 3
"pQru dm eannei lrda ensssd a bs"
#cgr vie_en_rose_1 0
error: la rejilla no existe
#codificar_guardado_rejilla Qualsevol_nit_1 4
"Faa,t uc tlrnaan ni qarau iil"
#cgr Qualsevol_nit_1 1
"nlFiaata r ucnar, u aiil ntaq "
#cgr Resistire_2 2
"leCrud.ama n s oa d ocl oe dn d a u"
#cgr Resistire_2 3
"aC uudeocaonr md.n e ds l aaodl"
#cgr Itaca_1 2
" sQ ue epaclna pve rs iufaarert gIt t a c a "
#cgr Hotel_California_5 4
"So "ed PleI Cua cptaallsap tie hen,br "myiWe n Hweg smhe aaineive".d,n'nchate n tt hhaerdi tnespi etrisieeth nnose indn sistx tyvie".loi Al ceayals, w lomi arfaea ckrng e frawyo n tuigh hlee upof tin, mit jddheus art ayt.to.. he hem s "
#cgr Hotel_California_5 1
" uSlpceod aI lta"hiPpne, ltC aeb agmr smeyi en "iwed. isn, eaH hh"naa'Wtedv e htresihtarpt iece ieensein ntn y snA ei"xnnt.idl hvlossto ietiaiccnraelsge l yf ,farwo amarwynau opk etu i hdte hdo fmeli e ttnuo,sitg h jht.e .hsaar.e ym "
#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... "
#codificar_patron 2 15 10
"@,_no}zo|~k|*Q|d'O|sy*]kw}k* x`?Mkx)kxk6*~|k}~5N*} ox)y*sx~|`.Q svy6*}o*oxmn.T|y1*ox*} *mkl!_myx!o|~sny*om?Ux*wyx}~| y}y~)N}om~y8"
#cp 0 15 10
error: el patron no existe
#cp 3 20 30
"bodr$"j>, E2>3$,/1 -p"
#cp 4 32 27
"%h;[+.!W}(|G;}(|G;}(|V;*+;)+.!;}#ZGm}(|c;}(|V;*+;)+.!;}(|G;}(|G;xe|"
#codificar_guardado_patron Resistire_2 1 31 26
"Ju{)p*:~0 -({:}*):'{:.*' ~{~H"
#codificar_guardado_patron Let_it_be_2 5 10 5
error: el patron no existe
#cgp Hotel_California_5 4 64 59
"ih[7[?=DHA@[QL[PDA[~=LP=EJg[],HA=OA[>NEJC[IA[IU[SEJA]i[$A[O=E@g[8PAmD=R=JbP[D=@[PD=P[OLENEP[DANA[OEJ?A[JEJAPAAJ[OETPU[JEJA]i[|J@6lPWHH[LDKOA[RKE?AO[=NA[?=HHEJC[BNKI[B=N[=S=Ug[S=GA[UKQ[QL[EJ[PD{xIW@@H=[KB[PDA[JECDPg[FQOP[PK[DA=N[PDAI[O=Uiii"
#cgp Hotel_California_1 4 64 58
error: el mensaje no existe
#cgp Itaca_1 1 23 28
"Xu}+,02/10<-"/<#"/<")<3pa1$q< }-<}<e1} }"
#cgp Qualsevol_nit_5 2 3 3
"c%_b/Ln2S~)_c%_o%Re5MrM"
#cgp Let_it_be_1 3 7 2
"Xjhr"K%gkqh"o~tgoj"ks!vlqgu%ph#xtqzcnh0"Otujhv"Ofs{#gqojt"ws"oj"
#decodificar_patron 3 20 30
"amanece ma's temprano"
#decodificar_patron 20 3 3
error: el patron no existe
#dp 2 3 3
"de colors i de perfums."
#dp 1 29 26
"Cuando duerma con la soledad."
#dp 4 32 27
"no more bla, bla, bla; no more bla, bla, bla; no more bla, bla, bla"
#dp 2 15 10
"Al despertar Gregorio Samsa una man~ana, tras un suen~o intranquilo, se encontro' en su cama convertido en un monstruoso insecto."