Seminario de algoritmia. Etapa 5
Enviado por Lalo Todas mi • 14 de Septiembre de 2020 • Tarea • 424 Palabras (2 Páginas) • 73 Visitas
Universidad de Guadalajara.[pic 1]
Centro Universitario de Ciencias Exactas e Ingeniería.
Seminario de algoritmia.
Etapa 5
Martínez Nava Jorge Justino
Código: 215416157
Sección: D09
Introducción:
Para esta etapa debíamos crear un grafo el cual relacionara cada compra de los usuarios. Esto para saber que productos se compran en conjunto con otros y tener una relación de ello. En caso de existir una compra previa de esos productos, aumentar el peso en 1.
Desarrollo del código.
Primeramente, utilizamos el recurso que el profesor nos proporcionó. Este era la clase grap.h
En ella declaramos un grafo no dirigido, declaramos un método que validara si es un grafo mediante su origen y destino, también el método para crear el grafo el cual recibirá de valores el origen, destino y un entero el cual tendrá como valor el peso del grafo.
Ahora el método de imprimir datos. Este imprimirá el grafo como tal, su origen y destino junto a su costo. Y el método de obtener costo nos dará el costo del grafo.
[pic 2]
isEdge(); Es el método para validar si es grafo. Recibe un origen y un destino como parámetros. Valida si el origen del grafo no es el mismo que el final de este.
[pic 3]
createEdge(); Es el método para crear el grafo. Recibe de parámetros un origen, un destino y un costo.
[pic 4]
printData(); Imprimir datos es el método que se encarga de mostrarnos el grafo con su origen, destino y su costo.
[pic 5]
getCost(); Se encarga de darnos el costo de un grafo existente, en caso de que este no exista, lanza una excepción.
[pic 6]
createEdgeGraph(); Este método se encarga de crear el grafo, lo que hace es recorrer la lista de usuarios y revisar sus compras. Mediante estas consultas va obteniendo los objetos y claves de los id’s. En caso de que en la sesión actual haya mas de dos compras, recorrer los productos sin tomar en cuenta los anteriores, revisa la conexión con dichos productos y en caso de encontrar una coincidencia con otra compra, aumenta el valor en uno del valor total del grafo. En caso de que no exista, se deja con el valor de 1.
[pic 7]
loadDB(); Pequeña modificación, al momento de cargar la base de datos, mandamos a crear un grafo con las compras ya registradas.
[pic 8]
Conclusión.
La practica estuvo corta, pero en general algo compleja al momento de crear el grafo ya que tenía que consultar primero la base de datos y las compras de los usuarios. Creo que esto será muy útil para saber en un futuro que cosas recomendar al momento de comprar algo.
...