ClubEnsayos.com - Ensayos de Calidad, Tareas y Monografias
Buscar

Fundamentos de Programación


Enviado por   •  4 de Julio de 2021  •  Tarea  •  1.486 Palabras (6 Páginas)  •  105 Visitas

Página 1 de 6

Fundamentos de Programación

Proyecto Primer Parcial

2019 2T

Objetivos:

El objetivo del proyecto es darle a usted más experiencia en el manejo de estructuras de control, listas y el manejo de la librería Numpy

Descripción:

Una compañía de viajes tiene información de los principales hoteles y atractivos turísticos de Japón y le ha pedido que desarrolle un programa para realizar consultas y recomendaciones hoteles y atractivos de Japón de acuerdo a algunos parámetros ingresados.

A usted se le proporciona un proyecto en Python que contiene los siguientes archivos:

Nombre archivo

descripción

principal.py

Archivo que contiene la implementación del programa principal

funciones.py

Archivo que contiene la implementación de las funciones que se usan en el proyecto.

sitiosturisticos.csv

Archivo de texto con la información de los atractivos turísticos de japón

hoteles.csv

Archivo de texto que contiene la información de los hoteles de japón

Cada línea del archivo sitiosturisticos.csv corresponde a un atractivo turístico de Japón y tiene el siguiente formato:

Nombre Atractivo| latitud|longitud|descripción

Cada línea de este archivo hoteles.csv corresponde a un hotel Japán y contiene la siguiente información separadas por coma:

Nombre Hotel, Ciudad, Precio desde, Puntuación Limpieza, Puntuación Instalaciones, Puntuación Seguridad, Puntuación Personal, longitud, latitud

El archivo funciones.py contiene la función procesar_sitios(nombrearchivo) que procesa la información del archivo sitiosturistico.csv y retorna una lista de lista con la información de cada sitio con el siguiente formato:

[['nombre1',[lat1,long1], 'descripcion1'], ['nombre2',[lat2,long2], 'descripcion2'],..]

Ejemplo de la llamada a procesar_sitios

[pic 1]

El archivo funciones.py contiene una función llamada procesar_hoteles(nombrearchivo) que lee el archivo de hoteles.csv y retornar cinco listas con el nombre, ciudad, precio, ubicación y puntuación de cada hotel (usted debe completar esta función – Actualmente la funcion solo retorna 5 listas vacias).

Ejemplo de la llamada a procesar_hoteles

[pic 2]

A usted y su grupo se les pide implementar un programa con un menú numérico que se ejecute de forma continua y que permita llevar a cabo las siguientes acciones:

  1. Ingresar la información de un nuevo atractivo turístico

Esta opción le permite al usuario ingresar la información de un nuevo atractivo turístico. El usuario debe ingresar el nombre, ubicación (longitud y latitud) y una breve descripción del lugar. El programa debe validar que no exista otro sitio con el mismo nombre en y que todos los campos estén llenos.[pic 3]

  1. Recomendar sitios de interés

En esta opción el usuario ingresa una breve descripción de lo que desea realizar y el programa retorna la información de los atractivos turísticos que contiene al menos una de las palabras ingresadas en la descripción del sitio. De cada atractivo se muestra el nombre del sitio, el número de palabras de la búsqueda que se encontraron en la texto y el link en google maps del sitio.

[pic 4]

El link en google maps a una lugar se forma reemplazando “lat,long” en http://www.google.com/maps?q=lat,lng por la latitud y longitud del punto. Por ejemplo el link a google maps del Templo Todaiji sería http://www.google.com/maps?q=34.6913079, 135.8355547

  1. Buscar hoteles cercanos

El usuario ingresa el nombre de un atractivo turístico, un rango de precio y una puntuación general y el programa muestra la información de los 10 hoteles más cercanos al sitio que cumple con los criterios de búsquedas.

De cada hotel se muestra su nombre, precio desde, distancia al sitio ingresado, puntuación general. La información de los hoteles se muestra del más cercano al más lejano. El programa debe validar que el sitio ingresado exista en la base de datos de sitios

[pic 5]

En el ejemplo anterior el usuario quiere consultar hoteles cerca de Akihabara que cuesten desde 100 hasta 200 dólares y que tengan una puntuación general mínima de 8

El link en google maps a una lugar se forma reemplazando “lat,long” en http://www.google.com/maps?q=lat,lng por la latitud y longitud del punto

  1. Armar itinerario.

El usuario ingresa los nombres de los sitios turísticos que está interesado en visitar y su punto de partida y a continuación el programa muestra cuál sería la mejor ruta para visitar los sitios ingresados. La mejor ruta es en la que el usuario visite todos los lugares ingresados y recorra la menor distancia. (Use la función 7)

[pic 6]

  1. Estadísticas de hoteles (Usar numpy)

En esta opción el programa muestra información estadística acerca de los hoteles de Japón. El programa continuación muestra lo siguiente información por cada ciudad:

  • El número de hoteles en la ciudad
  • El precio mínimo y máximo de los hoteles en la ciudad
  • El número de hoteles que tienen una puntuación general más de 8

A continuación, se describe la lista de funciones mínimas que debe tener su programa

  1. Cree una función que reciba el nombre de un sitio turístico, la lista de sitios turísticos y retorne la lista que contiene la información del sitio pasado como parámetro. Si el sitio ingresado no existe la función retorna una lista vacía. (Implemente la opción 1)

  1. Cree una función llamada removerSignosPuntuacion que reciba una cadena de caracteres y retorne la misma cadena, pero sin signos de puntuación y con todos sus caracteres en minúsculas.

[pic 7]

  1. Cree una función llamada contarApariciones que reciba una cadena de texto y una lista de palabras y retorne cuántas de las palabras de la lista estaban presentes en la cadena de texto. En la búsqueda debe realizar sin importar si las palabras están en mayúsculas o minúsculas. (Internamente esta función llama a la función anterior para limpiar la cadena antes de hacer la búsqueda)

[pic 8]

  1. Cree una función que reciba la lista de sitios turísticos y una lista de palabras y retorne una lista con el número de palabras en la lista reciba como parámetro que aparecen en cada sitio.(Implemente la opción 2)

[pic 9]

La respuesta indica que en primer sitio aparecen dos palabras de la lista, en el segundo sitio aparece 1 palabra de la lista, en el tercer sitio aparecen 0 palabras, en el siguiente sitio aparecen o palabras.

Resultados tendrá tantos elementos como sitios

...

Descargar como (para miembros actualizados) txt (10 Kb) pdf (331 Kb) docx (49 Kb)
Leer 5 páginas más »
Disponible sólo en Clubensayos.com