Documentos de Académico
Documentos de Profesional
Documentos de Cultura
FACULTAD DE INGENIERÍA
CICLO 2017-01
ALGORITMOS
TEMA A DESARROLLAR:
Grupo 7
SECCIÓN:
IS45
INTEGRANTES:
López Yamunaqué, Rayza Yanesha
Hurtado Salazar, Alondra Grisdel
Cisneros Escobedo, Paulo Cesar
Muchotrigo Siguel, Cesar Anthony
1
Índice
Resumen ..................................................................................................................................................... 3
Introducción ................................................................................................................................................. 4
Marco Teórico: ............................................................................................................................................ 5
Análisis y Diseño de la Solución .............................................................................................................. 9
Análisis de datos de entrada, salida e intermedios: ......................................................................... 9
Datos de entrada: ............................................................................................................................... 9
Datos de salida: .................................................................................................................................. 9
Datos intermedios: ........................................................................................................................... 10
Modelo matemático.................................................................................................................................. 10
Algoritmo de solución .............................................................................................................................. 11
Pseudocódigo ....................................................................................................................................... 11
Diseño y funcionamiento de procedimientos y funciones .............................................................. 15
Diseño de las interfaces de entrada/salida en Excel ...................................................................... 16
Diseño de interfaz de entrada ........................................................................................................ 16
Diseño de la interfaz de salida ....................................................................................................... 16
Implementación completa de la solución en Visual Basic para Aplicaciones (VBA) ..................... 17
Establecer diferentes escenarios de solución y elegir el mejor escenario ...................................... 20
Conclusiones............................................................................................................................................. 21
Recomendaciones ................................................................................................................................... 21
Apéndices .................................................................................................................................................. 21
Bibliografía ................................................................................................................................................ 22
2
Resumen
De esta manera se espera que, al ingresar al programa el valor del préstamo, la tasa
de interés anual, el plazo del préstamo, las comisiones, seguros, portes y el tipo de
pago; este muestre, los números de pago, la cuota periódica del préstamo, el interés y
la amortización que se pagara en cada periodo, el saldo que queda por pagar, la cuota
TCFA, el total de intereses, y el monto total que se pagará al final del préstamo.
Este proyecto ha permitido que los alumnos desarrollen todos los conocimientos
estudiados en clase. Además, de adquirir conocimientos sobre información financiera,
3
la cual será útil para su uso al momento de pedir un préstamo, y también en la carrera
que se está estudiando.
Introducción
El trabajo final de algoritmos se desarrolla en el contexto de aprendizaje y aplicación de
todos los conceptos del curso. El tema que se desarrollará en este informe es un macro
(vba Excel) para determinar el cronograma de pagos de un préstamo de manera
mensual y trimestral.
Lo que hará el algoritmo es analizar el tipo de pago del préstamo a solicitar, si este es
mensual, la cuota a pagar por periodo será el valor del préstamo entre la tasa efectiva
mensual elevado al plazo del préstamo, todo eso entre la tasa efectiva mensual. Si el
tipo de pago es trimestral se hará un procedimiento parecido, pero en lugar de la tasa
efectiva mensual se usará la tasa efectiva trimestral, y se utilizará la tercera parte del
valor del préstamo. Luego, se procederá a calcular el valor del interés, el cual se halla
sabiendo el valor del saldo a pagar y si la tasa efectiva es mensual o trimestral.
4
Posteriormente, se procede a calcular la amortización en ese periodo, la cual se
determina con el valor de la cuota previamente identificado menos el interés.
Este proyecto motiva a investigar más sobre la programación en visual basic, permite
tener el conocimiento de diseñar e implementar un programa desde cero. Este proyecto
será de utilidad para todas las personas que deseen solicitar un préstamo, y sin
necesidad de ir a un banco o seguir un proceso engorroso en los sitios web de estos,
puedan generar simulaciones de préstamos con un cronograma de pagos confiable y
sobre todo con una buena experiencia de usuario.
Marco Teórico:
5
El funcionamiento de la tabla anterior es a base de fórmulas financieras que Excel
brinda, en este proyecto, se aplicará un algoritmo que permita hacer este cálculo sin
necesidad de acudir a las funciones financieras de Excel. La interface del cronograma
de pagos a desarrollar será similar puesto que permite conocer toda la información
necesaria.
Lo que pretende conseguir este proyecto es dar acceso a información financiera a
todas las personas que deseen solicitar un préstamo y que por alguna razón no pueden
ir a un banco a que los asesoren. Esto se realizará a través de datos de salida
relevantes, los cuales son el interés total que se pagará durante todo el período del
préstamo, la cuota que se tiene que pagar en cada periodo, el saldo que le queda por
pagar después de cada cuota, la amortización que debe realizar en cada periodo y la
amortización total, el monto adicional que pagará por comisiones, seguros y portes, y la
cantidad total que se pagará al final del préstamo.
6
Para tener una noción de cómo funciona el sistema de cuotas constantes, se puede
observar el siguiente gráfico:
Aquí se observa que la mayor parte de los intereses se paga al inicio del préstamo y
luego tiende a disminuir. En cambio, el capital que se amortiza funciona de manera
inversa, al inicio se amortiza muy poco y al final del préstamo recién se paga el capital
prestado mientras la cuota se mantiene constante.
Es importante describir los conceptos más importantes que intervienen en la
generación de un cronograma de pagos, según el portal Credizona estos son:
7
Interés: Es el valor calculado sobre el saldo del periodo anterior, tomando en
cuenta la tasa de interés pactada. Véase Interés compuesto
Amortización a Capital: Es el abono a la deuda que se hace en un periodo sin
incluir el interés. Es igual a la cuota menos el interés.
Saldo: Corresponde al valor que queda por pagar del total de la deuda después
de haber pagado una cuota.
Según el portal comparabien.com se define la tasa efectiva anual (TEA) como:
TEA: es la tasa de interés efectiva anual, y calcula el costo o valor de interés
esperado en un plazo de un año. Ya sea calculado en base a un año de 360 o
365 días. Asimismo, la TEA es el principal parámetro de comparación para
evaluar el costo de un préstamo o crédito. A mayor TEA más costará su
préstamo y tendrá que pagar más en sus cuotas mensuales.
TCEA: es la TEA más todos los gastos secundarios como gastos en seguros,
comisiones y otros, esta es la tasa real que el usuario paga por el préstamo y es
poco entendida por el público.
TEM: es la tasa efectiva mensual, se calcula a partir de la TEA.
TET: es la tasa efectiva trimestral, se calcula a partir de la TEA.
De esta manera se espera que, al ingresar al programa el valor del préstamo, la tasa
de interés anual, el plazo del préstamo, las comisiones, seguros, portes y el tipo de
pago; este muestre, los números de pago, la cuota periódica del préstamo, el interés y
la amortización que se pagara en cada periodo, el saldo que queda por pagar, la cuota
TCFA, el total de intereses, y el monto total que se pagará al final del préstamo.
Ejemplo:
Si se desea saber las cuotas e interés que se va a pagar por un préstamo de 3000.90
soles, a tasa de interés anual del 20%, en 15 meses, con 300 soles de portes, 250
soles de comisión y el mismo monto para seguros. Además, se requiere que la
frecuencia de pago sea trimestral.
8
cuota TCEA es de 1486.70 soles, la tasa efectiva trimestral será de 4.66%, el interés en
la primera cuota será de 139.95, en la segunda 254.40, en la tercera 342.16, en la
cuarta 401.99 y en la ultima 432.59. Así mismo, la amortización será 546.75, 572.25,
598.93, 626.87 y 656.10 respectivamente.
De esta forma, al finalizar el préstamo el pago total que se habrá pagado será 4233.49
soles.
Valor
Variable Descripción Tipo Inicial Rango de Valores
V_prestamo Es el valor del préstamo Single 0 Mayor a 0
Mayor a 0% y menor a
Tasa_EA Es la TEA del préstamo Single 0 100%
Es el plazo en meses del Mínimo 6 meses y
Plazo_prestamo Integer 0
préstamo máximo 360 meses
Co Son las comisiones del préstamo Single 0 Mayor a 0
Se Son los seguros del préstamo Single 0 Mayor a 0
Po Son los portes del préstamo Single 0 Mayor a 0
Es la frecuencia de pago
Tipo_pago String Mensual Mensual o trimestral
(mensual o trimestral)
Datos de salida:
Valor
Variable Descripción Tipo Inicial Rango de Valores
Vector cuota períodica del
Cuota Single 0 Mayor a 0
préstamo
Vector que acumula el interés
V_Interés Single 0 Mayor a 0
del préstamo en cada período
Vector que acumula el monto de
V_Amortizacion la amortización del préstamo en Single 0 Mayor a 0
cada período
9
Vector que acumula el saldo del
V_Saldo Single 0 Mayor o igual a 0
préstamo en cada período
Vector que acumula los números Mayor o igual a 2 y
Período Integer 0
de pago menor o igual a 360
Vector cuota con todos los
Cuota_TCEA gastos adicionales en cada Single 0 Mayor a 0
período
Vector que acumula la sumatoria
Total_interes Single 0 Mayor a 0
de todos los intereses pagados
Vector que acumula la sumatoria
Total_Amortizacion de todas las amortizaciones Single 0 Mayor a 0
pagadas
Vector que acumula a sumatoria
Pago_Total de todos los interés pagados y Single 0 Mayor a 0
las amortizaciones
Datos intermedios:
Valor
Variable Descripción Tipo Inicial Rango de Valores
Función de la tasa efectiva mensual.
TEM Su cálculo se describe en el modelo Single 0 Mayor a 0
matemático
Función de la tasa efectiva
TET trimestral. Su cálculo se describe en Single 0 Mayor a 0
el modelo matemático
Modelo matemático
En el portal abanfin.com, se describe como calcular la cuota y el interés en un
préstamo en cuotas constantes. Para ello primero se calcula la cuota con la siguiente
fórmula:
10
La amortización se calcula con la siguiente fórmula:
Para hacer estos cálculos se utilizan fórmulas intermedias, las cuales son:
Para generar el cronograma de pagos se utilizará un FOR que permita generar todos
estos cálculos en cada período del préstamo.
Algoritmo de solución
Pseudocódigo
INICIO
V_interes(360) Real
Cuota(360) Real
Cuota_TCEA(360) Real
V_amortizacion(360) Real
V_Saldo(360) Real
Total_interes(360) Real
Repetir
Ingresar Tipo_pago
11
Hasta (Tipo_pago = ”mensual”) o (Tipo_pago = “trimestral”)
Repetir
Ingresar V_prestamo
Hasta (V_prestamo>0)
Repetir
Ingresar Tasa_EA
Si Tasa_EA<=0 o Tasa_EA >=1 entonces Mostrar “La Tasa de interés efectiva anual
debe mayor a 0 y menor a 1”
Si Tipo_Pago=”trimestral” entonces
Repetir
Ingresar Plazo_prestamo
Sino
Repetir
Ingresar Plazo_prestamo
Hasta (Plazo_prestamo>0)
Fin Si
Repetir
Ingresar Co
12
Si Co<=0 entonces Mostrar “Las comisiones del préstamo deben ser positivas”
Hasta (Co>0)
Repetir
Ingresar Se
Si Se<=0 entonces Mostrar “Los seguros del préstamo deben ser positivos”
Hasta (Se>0)
Repetir
Ingresar Po
Si Po<=0 entonces Mostrar “Los portes del préstamo deben ser positivos”
Hasta (Po>0)
V_Saldo(0) =V_prestamo
Total_interes(0)=0
V_amortizacion(i) = Cuota(i)-V_interes(i)
periodo= i
V_Saldo(i)=V_Saldo(i-1)-V_amortizacion(i)
13
Siguiente i
Sino
periodo=i
V_Saldo(i)=V_Saldo(i-1)-V_amortizacion(i)
Siguiente i
Fin Si
Mostrar TEM
Mostrar Cuota(i)
Mostrar Cuota_TCEA(i)
Mostrar V_interes(i)
Mostrar V_Saldo(i)
Mostrar V_amortizacion(i)
Mostrar Total_interés(i)
Mostrar periodo(i)
14
Mostrar Total_Amortizacion(i)
Mostrar Pago_Total(i)
Siguiente i
Sino
Mostrar TET
Mostrar Cuota(i)
Mostrar Cuota_TCEA(i)
Mostrar V_interes(i)
Mostrar V_Saldo(i)
Mostrar V_amortizacion(i)
Mostrar Total_interés(i)
Mostrar Total_Amortizacion(i)
Mostrar Pago_Total(i)
Mostrar periodo(i)
Siguiente i
Fin Si
Fin
Diseño y funcionamiento de procedimientos y funciones
En el presente trabajo, se utilizará funciones para hacer el cálculo de la tasa efectiva
mensual y la tasa efectiva anual, de esta manera estos procesos se realizarán en un
módulo, y la hoja de cálculo del botón ejecutar se verá más ordenada.
Además, se empleará procedimientos para que el programa pueda borrar los datos de
la interfaz de salida de Excel. De igual manera, ya que se están empleando vectores,
se implementará un procedimiento para el cálculo de los datos de salida y otro para
15
mostrarlos, así se podrán tener separados los procedimientos para encontrarlos más
fácilmente.
16
o Trimestral:
17
o Procedimientos
18
Módulo 1:
o Funcione
19
Establecer diferentes escenarios de solución y elegir el mejor
escenario
20
Conclusiones
o Este trabajo permite que las personas, sobre todo los estudiantes, tengan la
posibilidad de conocer el monto adicional que se pagarían en intereses seguros
y portes, al pedir un préstamo.
o No se ha utilizado funciones de manera amplia debido a que, en el algoritmo de
solución se ha implementado vectores para casi todos los datos, esto dificulta el
uso de esta herramienta.
o Este algoritmo de cronograma de pagos se ha implementado únicamente para
cuando la cuota es fija, no puede ser utilizado para calcular los montos de
amortizaciones o intereses cuando las cuotas son variables.
o Este proyecto ha permitido que los alumnos desarrollen todos los conocimientos
estudiados en clase, tales como estructuras repetitivas, vectores, funciones y
procedimientos. Además, de adquirir conocimientos sobre información
financiera, la cual será útil en el futuro ya que, el problema que se desarrolló
está vinculado con la carrera que se estudia.
Recomendaciones
Apéndices
En este trabajo no se realizaron investigaciones adicionales.
21
Bibliografía
Planilla Excel (2017) Amortización sistema alemán y francés, recuperado de
http://www.planillaexcel.com/planilla-de-excel-amortizacion-sistema-aleman-y-frances
[Consulta: 7 de octubre de 2017]
Credizona (2016) Amortiguaciones, recuperado de
https://sites.google.com/a/credizona.com/inicio/todo-credito/amortizaciones [Consulta: 7
de octubre de 2017]
Coparabien (2014) TEA, recuperado de https://comparabien.com.pe/faq/que-tea
[Consulta: 7 de octubre de 2017]
Economia Simple (2016) Tipos de préstamos bancarios, recuperado de
https://www.economiasimple.net/tipos-de-prestamos-bancarios.html [Consulta: 18 de
noviembre de 2017]
22