Skip to content
diget22 edited this page May 22, 2020 · 4 revisions

Al iniciar el programa, el usuario se encuentra con un menú de opciones que le permite comprar productos, ver su carro, pagar o simplemente abandonar el programa. Los objetivos iniciales eran crear un programa con múltiples funcionalidades que permitiera al usuario adquirir diferentes productos de un stock invariable, además de poder consultar su carro actual y por último, realizar el pago de la compra. Como resultado final hemos alcanzado dichos objetivos además de incluir varios bucles que permiten encadenar usuarios una vez haya terminado su compra el anterior o realizar pagos con cantidades inferiores al precio hasta que el pago sea igual o mayor que el precio y devuelva el dinero restante.

En nuestro código encontramos la función: void banner() que se usa cada vez que haya un usuario nuevo para dar la bienvenida.

Respecto a la función principal es un "int main" donde encontramos un menú de opciones programado con un “do- while”. En primera instancia, el usuario se encuentra con el menú inicial, donde se le pregunta si quiere realizar una compra, ver su carrito, pagar o salir del programa.

Si selecciona la opción de comprar, se le imprime en pantalla los datos de todos los productos leyendo el fichero productos.txt. Este fichero contiene ya inicializado el nombre, la tecla que hay que introducir para seleccionar el producto, su precio y la cantidad restante de productos. Para abrir el fichero en modo lectura hemos utilizado esto: pfichero=fopen("productos.txt", "r");

Tras esto, el usuario deberá seleccionar los productos deseados que se le implementaran en el carro o simplemente la opción de volver con la que se le dará la opción de realizar otra operación. Una vez seleccionado los productos deseados el usuario volverá al menú inicial donde podrá realizar otra operación.

Si selecciona la opción de “ver su carro” se le imprimirá por pantalla los productos y cantidad que ha elegido previamente. Además de volver a preguntarle si desea realizar otra operación.

Si selecciona la opción de pagar o la de no realizar más operaciones se le imprimirá por pantalla el precio que debe y el usuario deberá introducir pagos hasta que la cantidad sea igual o superior al precio. Si el usuario no supera o iguala el precio a pagar, el programa le pide que introduzca la cantidad restante que falta por pagar. Una vez pagado se le imprime por pantalla la vuelta de su compra, además de despedir al cliente.

Tras 5 segundos el programa pregunta si existe otro cliente, de ser afirmativo el programa vuelve al menú principal. Si no hubiere más clientes el programa finaliza tras unos segundos de apagado.

Clone this wiki locally