FESTIVAL ONLY SHIPS
El 19 de diciembre de 2019 se estrenó la última entrega de Star Wars en España. Esto ha espoleado a unos amigos para la creación de un
festival de cine de ciencia-ficción que tendrá como característica principal
que haya naves en la narrativa de todas las proyecciones. Por eso, el festival
se llamará “Only ships” (Sólo naves).
El grupo de amigos se ha puesto en
contacto con el centro comercial Carretres para alquilar una sala –rebautizada
como “Sala Nostromo” para la ocasión (Es el nombre de la nave en la película
“Alien, el octavo Pasajero”, que será la película que inaugure el festival, y
de la que se cumplió su 40 aniversario en marzo) durante la celebración del
festival.
Uno de los amigos es desarrollador de
aplicaciones y ha decidido crear una aplicación –muy sencilla- que gestione la
adquisición de entradas. Vamos a ayudar a este amigo a crear su App.
Todas las entradas valdrán 3 Euros
Según se entra a la aplicación,
deberá tenerse la siguiente carátula y menú:
Nota: En el apartado de recursos, se tiene un String que nos da el ASCII Art
correspondiente.
Nota 2: En el caso de llamada a funciones, deberán pasarse los parámetros
necesarios.
La entrada a este menú –funcionando
correctamente- valdrá 0,25 puntos
(No es necesario que sea una función, puede estar dentro del main, pero sí que
sea repetitivo y que llame a las funciones indicadas en lo sucesivo)
Si se selecciona la opción 0, -y sólo
si se selecciona la opción 0- se abandonará la aplicación (0,5 puntos)
Si se selecciona la opción 1, se
llamará a una función mostrar, que me mostrará el póster y el título de la
película (Ascii Art para ello disponible en el apartado de recursos (1 punto)
Si se selecciona la opción 2, se
llamará a una función mostrarSala que nos sacará el diagrama de estado actual de la sala –Las butacas vacías se representan
por ‘O’, las butacas llenas por ‘X’:
(En la anterior ejecución, ninguna
entrada se ha vendido aún, por lo que no hay
ninguna butaca con el carácter ‘X’. La sala consta de 12 filas y 20
butacas por fila) (2 puntos)
Si se selecciona la opción 3, el
programa llamará a la función comprarEntrada, que funcionará tal como se ve en
el siguiente ejemplo de ejecución(Nos pedirá fila y la butaca que se quiere y
tras preguntarnos si estamos de acuerdo con el precio, nos imprimirá la entrada(si
estamos de acuerdo, claro), mediante una llamada a la función imprimirEntrada)
Esta función cambiará el estado de la
sala, el cual mostraremos mediante la anterior función:
Como puede verse en el ejemplo, se
tiene que la butaca 2 de la fila 2 ha cambiado su estado de ‘O’ a ‘X’
En el caso de que quiera comprarse
una entrada para una butaca que ya se ha vendido debe aparecer lo siguiente:
(2 puntos)
La opción 4 permite devolver una
entrada, lo cual vuelve a cambiar el estado de la butaca de ‘X’ a ‘O’. Para
ello llamará a una función devolverEntrada, que realizará lo siguiente:
En el caso de que se quiera devolver
una entrada que no había sido vendida, debe aparecer lo siguiente:
(2 puntos)
La quinta opción debe permitirnos
acceder al valor de lo recaudado hasta ahora
(2 puntos)
Si el aspecto de la aplicación es
igual al de las capturas, se concederán los 0,25 puntos restantes.
Recursos:
ASCII Art
para el nombre del festival
Se debe usar el siguiente String para la carátula del festival:
(""+
"
______ _ _
_ ____ _ _____ _ _
\n" +
"
| ____| | | (_) | |
/ __ \\ | | / ____| | (_)
\n" +
"
| |__ ___ ___| |_ ___ ____ _| | | | | |_ __ | |_
_ | (___ | |__ _ _ __
___ \n" +
"
| __/ _ \\/ __| __| \\ \\ / / _`
| | | | | | '_ \\| | | | | \\___ \\| '_ \\| | '_ \\/ __|\n" +
"
| | | __/\\__ \\ |_| |\\ V / (_|
| | | |__| | | | | | |_| | ____) | | | |
| |_) \\__ \\\n" +
"
|_| \\___||___/\\__|_| \\_/
\\__,_|_| \\____/|_| |_|_|\\__, |
|_____/|_| |_|_| .__/|___/\n" +
"
__/ | | | \n" +
"
|___/ |_| ");
ASCII Art para conseguir ver el título de la película:
(“ #
\n" +
" # #
# # ###### # #
###### # #### ####
##### ## #
# #### #####
## #### ##
# ###### ##### #### \n" +
"
# #
# # # ##
# # #
# # # #
# # #
# # # #
# # #
# # #
# # # #
# # # \n" +
"# # #
# ##### # # #
##### # #
# # # # #
# # # #
# # # #
#### # #
# ##### # # #
# \n" +
"#######
# # # #
# # ### # #
# # # #
###### # # # #
##### ###### # ###### # #
##### # # \n" +
"# # #
# # # ## ###
# # #
# # # #
# # #
# # #
# # # #
# # # # # #
# # # #
\n" +
"# # ###### # ###### # #
# ###### ###### ####
#### # #
# ## ####
# # #
#### # #
#### ###### # #
#### \n" +
" #”);
ASCII Art para la imagen del monstruo:
("
,'\" _ _
\"`.\n" +
" /.__,
._ -=- _\"` Y\n" +
"
(.____.-.`
\"\"` j\n" +
"
VvvvvvV`.Y,. _.,-' ,
, ,\n" +
" Y ||,
'\"\\ ,/ ,/
./\n" +
" | ,'
, `-..,'_,'/___,'/ ,'/
,\n" +
" .. ,;,,',-'\"\\,' ,
. ' ' \"\"' '--,/ .. ..\n" +
" ,'. `.`---'
`, / , Y -=- ,'
, ,. .`-..||_|| ..\n" +
"ff\\\\`. `._
/f ,'j j , ,' , , f , \\=\\ Y || ||`||_..\n" +
"l` \\` `.`.\"`-..,-' j /./ /, , / , / /l \\ \\=\\l
|| `' || ||...\n" +
" ` ` `-._ `-.,-/ ,'
/`\"/-/-/-/-\"'''\"`.`. `'.\\--`'--..`'_`' || ,\n" +
" \"`-_,', ,'
f , /
`._ ``._ ,
`-.`'// ,\n" +
" ,-\"'' _.,-' l_,-'_,,' \"`-._ . \"`. /| `.'\\ , |\n" +
" ,',.,-'\" \\=) ,`-. ,
`-'._`.V | \\ // .. .
/j\n" +
" |f\\\\ `._ )-.\"`. /|
`.| | `.`-||-\\\\/\n"
+
" l` \\` \"`._ \"`--' j j' j `-`---'\n" +
" `
`
\"`,- ,'/ ,-'\" /\n" +
"
,'\",__,-' /,,
,-'\n" +
" Vvv' VVv'");












No hay comentarios:
Publicar un comentario