Giter VIP home page Giter VIP logo

ccu_ticketsystem's Introduction

Tarea Final: Sistema de Tickets


Alumnos No. de Cuenta
Paredes Zamudio Luis Daniel 318159926
Luis Norberto López García 423092075

Dependencias

  • Java 17

Comandos de Ejecución

En la carpeta de la tarea se abre la terminal y se ejecutan los siguientes comandos:

javac -cp ".:lib/PilasYColas.jar" -d bin src/*/*.java

java -cp ".:lib/PilasYColas.jar:bin/" System/Simulador

Resultado previsto en terminal.

Consideremos que al repetirse la simulación un par de veces, el resultado varia en cuanto a que actividad vende más, ganancias del día, membresías usadas, etc. Por lo anterior, pondremos un ejemplo de como se ve en terminal el resultado de la ejecución de un día de simulación.

Bienvenido al Sistema de Ventas del CCU.

Dia Laborado: 2023-06-10
Esto ocurrió hoy:

Fila de Venta:

Membresia: Estudiante
Prioridad: 3
Hora de entrada: 23:25:279:975629155
Actividad: Teatro

Membresia: Estudiante
Prioridad: 3
Hora de entrada: 23:25:279:975710108
Actividad: Museo

Membresia: Visitante Normal
Prioridad: 4
Hora de entrada: 23:25:279:971781855
Actividad: Exposición

Membresia: Visitante Normal
Prioridad: 4
Hora de entrada: 23:25:279:975536520
Actividad: Teatro

Membresia: Visitante Normal
Prioridad: 4
Hora de entrada: 23:25:279:975786242
Actividad: Teatro


Total de Boletos Vendidos: 5
Actividad más vendida: Teatro
Actividad menos vendida: Cine
Ganancias Totales del día: 310.0

CCU Cerrado por hoy. Resumen del día guardado exitosamente.

La información anterior también se puede consultar en el archivo Dia #X.txt generado tras la ejecución.


Documentación

Para generar la documentación se ocupa el siguiente comando en la carpeta de la tarea:

javadoc -cp ".:lib/PilasYColas.jar" -d docs src/*/*.java

Y esta se podrá abrir en el navegador desde el archivo allclasses-index.html


Notas

  • El archivo PilasyColas.jar es el .jar de las clases construidas en las prácticas del semestre, por lo que los import datos.PilasAndColas los realizamos a este archivo.

  • La construcción del archivo está hecha en dos partes.

    • En el paquete Priority se encuentran las clases referentes a la Cola de Prioridad. Aqui ocupamos tanto las clases proporcionadas por el profesor (vease la práctica de reposición) asi como nuestrás modificaciones a las mismas para que funcionen con nuestro caso.

    • En el paquete System se encuentran las clases de los Visitantes, el sistema de ventas (CCU) y la clase principal de la simulación.

  • A simples razgos, el sistema funciona de la siguiente manera:

    • Creamos un objeto de tipo CCU, el cual es el sistema de ventas. Este objeto ya tiene una cola de prioridad, una fecha de ejecución, un indicador para el total de boletos vendidos y para las ganancias del día.

    • Añadimos Visitantes de forma aleatoria, cada uno con una actividad y membresia igualmente aleatorios (pero cada membresía y cada actividad con una prioridad y precio respectivamente). Estos son añadidos a la cola de prioridad de CCU en donde según su membresía es la forma en la que serán atendidos. (Como en los cines donde manejan sistemas de lealtad).

    • Se hace la venta según la cola de prioridad. Por cada venta se suma al total de boletos vendidos y las ganancias obtenidas.

    • Hacemos "corte de caja". Calculamos la actividad más y menos vendida del dia. Se genera un archivo de texto con la información de venta del día (ganancias, total de boletos vendidos...) y reiniciamos la cola de ejecución para poder ser repetir nuevamente el proceso con valores de inicio.

  • Los archivos generados tras la ejecución se encuentran en la carpeta raiz del proyecto. Cada archivo está diferenciado por el número de dia simulado.


I fight for the USER!...

ccu_ticketsystem's People

Contributors

fleabaag avatar wallsified avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.