Está en la página 1de 12

INFORME EXAMEN TRANSVERSAL

“Sistema de compra de departamentos”

DUOC UC
DEPARTAMENTO DE INFORMÁTICA
PAY1101 PROGRAMACIÓN DE ALGORITMOS

QUERALTO PABLO
SILVA CRISTÓBAL

JULIO 2019
ÍNDICE

1. Introducción........................................................................................................3
1.1 Propósito.......................................................................................................3
1.2 Ámbito del sistema.......................................................................................3
2. Descripción general............................................................................................3
2.1 Requerimiento..............................................................................................3
2.2 Tópicos importantes.....................................................................................4
2.2.1 Menú......................................................................................................4
2.2.2 Opción compra de departamentos........................................................6
2.2.3 Mostrar departamentos..........................................................................8
2.2.4 Mostrar compradores..............................................................................10
3. Conclusión........................................................................................................12

2
1. Introducción

El objetivo de este documento es informar en detalle la estructura y características


del producto desarrollado según el requerimiento realizado por la inmobiliaria
Murito.

1.1 Propósito

El propósito del siguiente producto considera el desarrollo de una aplicación que


permita controlar la venta de departamentos en uno de los proyectos de la
inmobiliaria.

1.2 Ámbito del sistema

El sistema ha sido desarrollado mediante lenguaje Python en versión 3.x utilizando


el material dispuesto en el portal de campusvirtual.cl de Duoc UC y aplicando lo
aprendido durante el curso de la asignatura Programación de Algoritmos.

2. Descripción general

2.1 Requerimiento

Para el desarrollo del sistema se consideró el documento entregado por la


escuela, en donde se solicitaba que el sistema realizara las siguientes
operaciones:

 Compra de departamento
 Muestra de departamentos disponibles
 Mostar listado de compradores
 Búsqueda de comprador
 Reasignación de compra
 Muestra de ganancias totales

3
2.2 Tópicos importantes

2.2.1 Menú

Siguiendo lo solicitado por la inmobiliaria se desarrolló un sistema que diera


solución a los requerimientos de la siguiente forma:

Inicialmente se consideró que era importante designar las variables necesarias,


importar las funciones que se fueran a utilizar, crear los validadores a usar y crear
un menú que contuviera las operaciones solicitadas.

Para este menú se utilizaron tópicos vistos durante la asignatura como el while,
que, complementado con un validador True, validaba el menú principal. Se utilizó
un input que guardara la opción seleccionada de menú y para optar a alguna de
las funcionalidades del sistema se han utilizado los condicionales if, elif y else, que
al tener valores iguales a alguno de los valores ingresados (==) ejecutarán las
opciones respectivas. Break también fue utilizado en el desarrollo del menú
principal para poder salir de programa quebrando el ciclo principal.

A continuación, se presenta el diagrama de flujo según el planteamiento del menú


inicial:

4
Diagrama de flujo de menú principal. Fuente (Elaboración propia).

5
Para un desarrollo más ordenado se utilizó la sentencia def, que en Python,
permite definir funciones por usuario.

Dentro de las funciones definidas para la ejecución de sistema se utilizaron


también las sentencias break, continue y pass, que fueron usadas con el fin de
quebrar bucles, volver al comienzo y pasar a la sentencia siguiente sin realizar
alguna ejecución adicional en particular.

2.2.2 Opción compra de departamentos

Otro de los factores importantes dentro del encargo fue la compra de


departamentos. Ítem crítico, ya que el menú y los datos guardados en el desarrollo
dependen de esta opción.

Para la opción de compra de departamentos también fueron utilizadas las


sentencias condicionales if, elif y else, dentro de ciclos while. Se definió una
función y se incluyeron las listas que serían parte de ella:

comprar_deptos(lista_rut,lista_piso,lista_tipo_depto,lista_piso_depto,lista_mostrar)

Se utilizó un validador de menú que rompiera en ciclo del menú principal.

La lógica de ejecución de la opción de compra de departamentos se puede


visualizar en su diagrama de flujo.

6
Diagrama de flujo de opción compra de departamentos.
Fuente (Elaboración propia).

7
2.2.3 Mostrar departamentos

Cuando se recibió el encargo del proyecto, el equipo de trabajo consideró que el


desafío más complejo sería el crear una función que permitiera mostrar la letra x
en la posición (departamento), que correspondía al edificio (estructura), planteada
en el ejercicio a resolver.

Se evaluaron varias soluciones, la primera apreciación fue, sin duda, utilizar un


contador, que se encontraba dentro del contenido cursado en la asignatura, otra
alternativa era utilizar un ciclo con la sentencia ‘’for’’, para resolver el problema.
Sin embargo, y contextualizando; en la asignatura de matemáticas, ramo que
cursábamos de forma paralela, se introdujo el tópico de matrices.
Coincidentemente, al revisar las matrices, se puede deducir que cuando hay un
conjunto de números, si estos presentan determinada forma, siempre hay una
concordancia.

En el desarrollo que se nos encargó, se solicitaba construir una estructura de


departamentos que conformaría un rectángulo (edificio), de proporciones
determinadas (10 pisos con 4 tipos de departamentos por piso), por lo tanto, había
una clara relación entre cada piso de departamentos. Esta relación equivalía a 4 (4
tipos de departamentos), tomando en cuenta esto, se consideró que al crear una
lista de elementos, se podía determinar la posición exacta de cada departamento
vendido (posición de x en la estructura).

Como se mencionó antes, había una concordancia que equivalía a 4 dentro de


una formula, que al multiplicarla por el piso, conducía a un número determinado,
sin embargo este no presentaba exactitud en cuanto a la posición que debía tomar
x en el dibujo(edificio). Se hicieron pruebas con números y cálculos, hasta que se
pudo confirmar que al multiplicar el piso por 4 y restarle una variable determinada
(que equivalía al tipo de departamento), la formula arrojaba total exactitud en
cuanto a la posición determinada de x en el dibujo.
8
De esta forma, el departamento “A” equivalía a restar 3, el departamento “B”
equivalía a restar 2, el departamento “C” equivalía a restar 1, mientras que al
departamento “D” no era necesario restarle nada, por lo tanto, la variable a restar
del departamento “D” era equivalente a 0.
Entonces, la fórmula que se consiguió para determinar la posición de “X” en la lista
de elementos, fue la siguiente:

Numero de piso, multiplicado por cuatro, se resta la variable aplicada al tipo de


departamento que corresponde a cada letra, esto es:
(número de piso) * 4 – (tipo de departamento), donde:

Tipo de departamento:
A=3
B=2
C=1
D=0

De esta manera, la formula entrega la posición exacta del departamento en la lista


de elementos que se trabajaba en el ejercicio, para formar la estructura del
edificio.
Cabe señalar, que, al ser una lista de elementos, esta partía de cero, no desde el
número 1, por lo tanto, el paso final para completar la formula, era restarle 1 para
lograr determinar la posición solicitada.

Trabajar con una lista de elementos predeterminados pareció más interesante al


equipo, que usar un contador sólo con una letra predeterminada, ya que, al ocupar
un contador, lo más sencillo era usar una “D”, para mostrar los departamentos
disponibles, y una “X” en la posición ocupada (departamento comprado).

9
Por el contrario, trabajar con una lista de elementos predeterminados, nos permitió
asignar cada número y letra correspondiente a cada uno de los departamentos del
edificio, dando una perspectiva completa de cada departamento, y de esta forma,
evitar estar contando para determinar qué departamento era el que se visualizaba
en el gráfico mostrado en la función “DEPARTAMENTOS DISPONIBLES”.

La siguiente imagen muestra el reflejo de la opción en pantalla.

2.2.4 Mostrar compradores

La opción de muestra de compradores también se consideró importante, cabe


destacar que para su desarrollo se utilizaron sentencias similares a las anteriores
y definieron contadores para validar las condiciones.

El siguiente diagrama representa la lógica del desarrollo de esta opción.

10
Diagrama de flujo de muestra de compradores. Fuente (Elaboración propia).

11
3. Conclusión

Dentro de lo observado en el desarrollo del sistema, se detecto que, en relación


con lo aprendido y a medida que se profundiza en el lenguaje, existe comúnmente
más de una alternativa que solucione alguna problemática planteada. Cabe
destacar que las competencias adquiridas en la asignatura fueron de vital
importancia para la solución, ya que fueron la base para el desarrollo y la
investigación. Es justo mencionar que, según nuestra apreciación, en base a la
práctica y la experiencia es probable que en el futuro, podamos desarrollar
soluciones más optimas y en menos tiempo.

Además, dentro del ejercicio del desarrollo del sistema, hemos podido cuantificar
lo que se ha aprendido en la asignatura, que hasta el momento no había sido
percibido.

Finalmente podemos rescatar que este tipo de experiencias son útiles para poner
a prueba y potenciar los conocimientos y desafiar nuestras capacidades.

12

También podría gustarte