Java: productos con ticket de venta (ejercicio)

En este post sobre Java vamos a resolver un ejercicio para simular una venta (en donde se registran productos) y al final mostrar el ticket de venta. Lo que haremos será dar al usuario la opción para agregar, quitar o aumentar la cantidad de productos.

Cuando el usuario lo requiera, se podrá imprimir el ticket por pantalla, imprimiendo además de la lista de productos, el total.

Clase producto

Para simplificar las cosas haremos una clase que represente al producto de la vida real. Más adelante vamos a crear una lista del mismo para realizar todas las operaciones.

Como ves cada producto tiene precio, cantidad y descripción además de sus respectivos getters y setters. Una cosa importante que notar es el método getSubtotal que devuelve el subtotal; esto es, multiplicar la cantidad por el precio.

Lista de productos

Ahora que ya tenemos la clase Producto podemos crear un ArrayList de ese tipo para poder administrar la lista fácilmente.

No voy a detallar todas las operaciones de los productos, pues me parece que se explican por sí mismas:

Como puedes ver todos los métodos reciben el ArrayList de los productos; esto es para realizar operaciones sobre la lista de productos que el usuario tiene.

Funciones extras

En algunos puntos el usuario introduce ciertos valores que deben ser solicitados por consola. Para ello he creado algunas funciones que solicitan el valor:

Por ejemplo una de esas funciones se encarga de armar el producto solicitando los datos al usuario por consola.

Imprimir ticket en consola

El método que imprime el total y los productos comprados es el siguiente:

Simplemente hace un foreach y usa printf para alinear el texto. Aquí estamos usando el método getSubtotal del producto para mostrarlo en la tabla y para así también calcular el total final.

Menú principal

Todas las operaciones de productos (aumentar cantidad, eliminar, agregar) se manejan a través de un simple menú que está dentro de un ciclo while.

Dentro del ciclo, además de solicitar al usuario lo que desea hacer, se imprimen los productos que el usuario ya tiene en su lista:

Las opciones, como puedes ver, son:

  • Agregar producto
  • Cambiar cantidad
  • Quitar producto
  • Mostrar ticket y terminar venta
  • Salir

Poniendo todo junto

El código completo para simular una compra agregando y modificando productos además de imprimir el ticket queda como se ve a continuación:

Yo lo he ejecutado para probar y se ve así:

Ticket de venta con productos en Java – Ejercicio por consola

Si quieres tú también puedes probarlo en este enlace.

Encantado de ayudarte


Estoy disponible para trabajar en tu proyecto, modificar el programa del post o realizar tu tarea pendiente, no dudes en ponerte en contacto conmigo.

No te pierdas ninguno de mis posts

Suscríbete a mi canal de Telegram para recibir una notificación cuando escriba un nuevo tutorial de programación.

Dejar un comentario