3.Código - aigora/twE105-abel-diego-carlos GitHub Wiki
Para un mayor entendimiento del código, en este apartado intentaremos explicar de forma clara el código que hemos utilizado para desarrollar el programa; para ello distinguimos dos grandes partes:
1. La estructura general: se pretende explicar de forma esquemática la estructura más externa del código, para comprender a rasgos generales la forma de trabajar de nuestro programa.
2. Las funciones: Veremos las funciones que hemos creado y para que las hemos utilizado.
1. La estrucctura general:
Todo nuestro trabajo se encuentra bajo un 'do-while', gracias al cual conseguimos que una vez finalizada una tarea completa como registrarnos o iniciar sesión volvamos al menú principal. Y eso es precisamente lo primero que nos encontramos ahora:
El menú principal, la primera base de ramificaciones, que también se encuentra bajo un 'do-while' para asegurarnos que se indiquen los comandos correctos (1, 2 o 3), y si estos no son tecleados el bucle se repita una y otra vez hasta que se tecle un comando correcto.
Y a continuación nos encontramos con el 'switch' principal:
Dentro de este 'switch' se desarrolla el 99% del código del trabajo.
Siendo:
-
El 'case (1)' todas las funciones de inicio de sesión, comprobar usuarios, organización del viaje, precios, nuevas rutas, cambiar tarifas, etc. Es decir todas las funciones que en el tutorial se explican dentro del apartado "iniciar sesión" tanto como usuarios como empleados.
-
El 'case (2)' la función de resgistro, la cual configura el registro de nuevos usuarios, y comprueba si estos ya estan registrados.
- El 'case (3)' la función salir, que estará siempre en el menú principal, ya que al meter todo el código dentro de un 'do-while' una vez que terminemos de realizar una acción completa, el código nos devuelve al menú principal, pues el 'case (3)' es el escape de salida del programa, que nos permite salir una vez hallamos acabado todas las acciones deseadas.
(ej: inicio el programa por primera vez, accedo al registro y me registro como nuevo usuario, una vez terminado el registro me devuelve al menú principal, y ahora que ya estoy registrado, inicio sesión y organizo un viaje, terminada esta acción, el programa de nuevo me lleva al menú principal, y ahora ya desde aquí presionando la tecla 3 y accediendo al case(3), el programa termina).
2. Las funciones:
En 'libreria.c' encontramos las funciones, que utiliza el 'codigo.c' para realizar las distintas acciones.
Función nuevo usuario, es la que nos permite registrar nuevos usuarios, con un nombre y una contraseña que se almacenan en un fichero txt, asi como comprobar si el nombre de usuario ya está registrado.
Función comprobar ruta, que permite ver si la ruta introducida por el usuario está disponible, asi como acceder al fichero donde se encuentran almacenadas todas las rutas disponibles y sus respectivas distancias y extraer la información. (las rutas y sus distancias, son datos reales extraidos de 'Google maps' )
Función iniciar sesión, que permite comprobar si el usuario y contraseñas introducidos son correctos, y actuar en función de ello
Función nueva ruta, permite introducir nuevas rutas que no se encuentren ya en el fichero externo de las rutas.
Función calcular precio, permite calcular el precio, en función de la ruta y las especificaciones del viaje (la fórmula utilizada para calcular el precio se explica mas detalladamente en tutorialen el apartado " inciar sesión como empleados")
Función modificar precios, que permite al usuario acceder al un fichero externo y modificar las tarifas establecidas inicialmente.