Ajustes del sistema - Impresora y acceso a través de la LAN

Software para control de eventos, aforo y boletería

En este post te mostraré otro sistema que he realizado recientemente. Se trata de un programa para llevar el control de eventos por tiempo, en donde se cobra por el tiempo que la persona ingresa al evento.

Esto está pensado para controlar el acceso a eventos como parques, piscinas, juegos, etcétera; ya que se registra el tiempo de entrada y de salida a partir de un número de pulsera.

Cuando la persona sale del evento se realiza el cobro del mismo y se imprime un ticket. Las características del software son:

  • Control de aforo: Indica cuántas personas están dentro del establecimiento o evento
  • Registro de datos con número de pulsera para tener un identificador
  • Posibilidad de acceder desde el teléfono o cualquier dispositivo para que una persona esté en la entrada y otra en la salida del evento a través de la LAN
  • Opción para anular los tickets
  • Reporte de ventas en donde se incluyen filtros por fecha y hora, así como un reporte que indica la cantidad de tickets vendidos o anulados.
  • Reporte de ticket con mayor costo y ticket con menor costo
  • Impresión de tickets en impresora térmica

Realmente este programa fue pensado para llevar el control de eventos a donde asisten niños acompañados con sus padres (en donde dependiendo del tiempo de la estancia, se realiza el cobro) pero se puede adaptar a cualquier circunstancia.

(más…)

Ejercicio resuelto de copias de exámenes en Python

Python – Detectando copia en exámenes (ejercicio resuelto)

Hoy vamos a resolver un ejercicio de programación en Python que trata sobre detectar copia en exámenes. Básicamente es trabajar con entrada y salida de datos así como con listas y las operaciones que estas conllevan.

El ejercicio está confuso (me parece que a propósito) ya que da información innecesaria, pero supongo que es parte de su complejidad.

Veamos cómo resolverlo en pocas líneas usando Python.

(más…)

Solución a comportamiento raro de Scanner en Java

Java – Problemas con Scanner: no hace pausa

Hoy vamos a ver un problema y su solución de Java en cuanto al uso del Scanner. Obviamente si leímos la documentación probablemente no tengamos este problema, pero si no, en algún momento de la vida nos vamos a encontrar con él.

Al usar Scanner podemos solicitar datos de entrada y leerlos con nextInt, nextLine, etcétera. Pero en ocasiones al solicitar datos el Scanner no hace una pausa, es decir, no espera a que el usuario introduzca datos.

Esto no pasa siempre, y tampoco pasa de manera aleatoria; en este post te demostraré el problema y te explicaré la solución.

(más…)

Dashboard de sistema para estacionamientos - Mostrar gráficas y total de pagos

Sistema para estacionamientos: gratuito y open source

En este post te voy a mostrar un programa que acabo de crear (totalmente original) que sirve para el control de estacionamiento o parqueadero.

Básicamente es un software gratuito que sirve para llevar el registro en un parqueadero. Este sistema es open source y gratuito, por lo que puedes usarlo sin ningún costo, además de explorar su código fuente.

Las características generales son:

  • Registro de vehículo, ya sea motocicleta, auto, camionetas, etcétera.
  • Registro de fecha y hora de entrada
  • Cálculo del tiempo que el vehículo pasó estacionado
  • Ajuste de costo por hora con redondeo y tolerancia
  • Reporte de vehículos con tiempo de estancia y ganancia
  • Escritorio con reporte general y gráficas
  • Soporte de impresión de ticket de entrada para comprobante de ingreso y comprobante de pago en impresora térmica

A lo largo de este post te mostraré los detalles del software así como las instrucciones de descarga y la ubicación del código fuente.

Nota: en las capturas de pantalla probablemente verás datos aleatorios o incoherentes, pues los he generado aleatoriamente así que no esperes que tengan sentido, solo son de relleno para mostrarte los módulos.

(más…)

Redireccionar salida a archivo

Enviar contenido de archivo a programa y automatizar pruebas

En este post de programación te enseñaré a automatizar pruebas cuando solicitamos datos por teclado, sin importar el lenguaje de programación.

Cuando escribimos programas en donde se solicitan datos al usuario a través del teclado y probamos esos programas, debemos escribir los valores manualmente.

Si modificamos el programa o hay un error, lo volvemos a ejecutar y a llenar esos valores. Esto se hace tedioso cada vez, pues invertimos más tiempo probando que arreglando los errores o agregando mejoras.

Obviamente me estoy refiriendo a los programas por consola y en cuanto a “automatizar” me refiero a usar un archivo de texto con valores para pasarlos al programa en lugar de escribirlos manualmente.

Veamos entonces cómo automatizar la entrada de datos en programas. Te enseñaré un ejemplo con C y otro con Python, aunque este paradigma funcionará para cualquier otro lenguaje.

(más…)

Leer datos de entrada del usuario con Go

Introducción En la mayoría de programas por consola, necesitamos que el usuario introduzca datos. Ya sea para pedirle información o para hacer que seleccione determinada acción. Hoy veremos cómo leer datos por consola en el maravilloso lenguaje de programación Go. Leer entrada del teclado Para esto necesitamos crear un reader, Leer más…