Sei sulla pagina 1di 12

Clase 4b Representacin de algoritmos

Estructura de un algoritmooo
Declaracinlas variables entero contador
Cadena [25] nombre apellido
Entero asistencia

Cuerpo


Medios de expresin de un algoritmo
Los algoritmos pueden ser expresados de muchas maneras, incluyendo al lenguaje natural, pseudocdigo,
diagramas de flujo y lenguajes de programacin entre otros. (independientemente de el medio que se elija para
poder dar solucin al problema) Las descripciones en lenguaje natural tienden a ser ambiguas y extensas. El usar
pseudocdigo y diagramas de flujo evita muchas ambigedades del lenguaje natural. Dichas expresiones son
formas ms estructuradas para representar algoritmos; no obstante, se mantienen independientes de un lenguaje
de programacin especfico.
La descripcin de un algoritmo usualmente se hace en tres niveles:
1. Descripcin de alto nivel. Se establece el problema, se selecciona un modelo matemtico y se explica el
algoritmo de manera verbal, posiblemente con ilustraciones y omitiendo detalles.
2. Descripcin formal. Se usa pseudocdigo para describir la secuencia de pasos que encuentran la
solucin.
3. Implementacin. Se muestra el algoritmo expresado en un lenguaje de programacin especfico o algn
objeto capaz de llevar a cabo instrucciones
Diagrama de flujo


Diagrama de flujo que expresa un algoritmo para calcular la raz cuadrada de un nmero
Artculo principal: Diagrama de flujo
Los diagramas de flujo son descripciones grficas de algoritmos; usan smbolos conectados con flechas para
indicar la secuencia de instrucciones y estn regidos por ISO( entidad mundial que recoge ciertos estndares)
Los diagramas de flujo son usados para representar algoritmos pequeos, ya que abarcan mucho espacio y su
construccin es laboriosa. Por su facilidad de lectura son usados como introduccin a los algoritmos, descripcin
de un lenguaje y descripcin de procesos a personas ajenas a la computacin.
Uso de flechas que indicaa el camino o sentido - los colores son arbritrarios, todo diagrama de flujo tiene un
inicio y un fin.











Para el inicio y
final
Para designar procesos , declarar
variables(cadena real), clculos y operaciones
con variables (suma usamos un rectngulo)

Entrada: lea Para ingresar datos
Salida Escriba la computadora
escribe
Decision
Rojo
detengo
verde
Conector : 1
(busco el otro
donde diga 1)





Flecha lnea de flujo indica el sentido(nunca diagonal)



http://www.iso.org/iso/home.html
Los algoritmos pueden ser expresados de muchas maneras, incluyendo al lenguaje natural, pseudocdigo,
diagramas de flujo y lenguajes de programacin entre otros. Las descripciones en lenguaje natural tienden a ser
ambiguas y extensas. El usar pseudocdigo y diagramas de flujo evita muchas ambigedades del lenguaje
natural. Dichas expresiones son formas ms estructuradas para representar algoritmos; no obstante, se mantienen
independientes de un lenguaje de programacin especfico.

Reglas
Siempre debe de existir un camino a la solucin
Solo existe un inicio y un fin
Los simboplos se trazan de arriba abajo
De izquierda a derecha
Solo lneas de flujo horinzontales y verticales
No lneas sin conectar
Evitar el cruse de las lneas usando conectores
Conectores solo cuando sean necesario
Evitar poner muchas palabras dentro de los graficos o smbolos
Ejercicios:;
1. Representar un algoritmo q pida al usuario dos nmeros enteros, calcule la suma de estos y la muestre en
la pantalla




inicio
Entero A;B










2. Representar un algoritmo que pida tres nmeros, calcule la suma de estos nmeros y muestre un
mensaje enm la pantalla indicando si la suma es o no mayor que 50

















Lea A,B
C <- A+B
Escriba la
suma es: , C
fin
inicio
Entero A;B,c,d
Lea A,B,c
D <- A+B+C
D>50
Escriba si
Escriba no
fin

3. Pida al usuario 4 notas , calcule el promedi y muesre si esta desaprobado o aprobado





























Entero A;B,c,d
Real E
Lea A,B,c ,d
E <- (
A+B+C+D)/4
E>=10.5
Escriba aprobado
Escriba desaprobado
fin
inicio







Pseudocdigo
Artculo principal: Pseudocdigo
El pseudocdigo (falso lenguaje, el prefijo pseudo significa falso) es una descripcin de alto nivel de un
algoritmo que emplea una mezcla de lenguaje natural con algunas convenciones sintcticas propias de lenguajes
de programacin, como asignaciones, ciclos y condicionales, aunque no est regido por ningn estndar. Es
utilizado para describir algoritmos en libros y publicaciones cientficas, y como producto intermedio durante el
desarrollo de un algoritmo, como los diagramas de flujo, aunque presentan una ventaja importante sobre estos, y
es que los algoritmos descritos en pseudocdigo requieren menos espacio para representar instrucciones
complejas.
El pseudocdigo est pensado para facilitar a las personas el entendimiento de un algoritmo, y por lo tanto puede
omitir detalles irrelevantes que son necesarios en una implementacin. Programadores diferentes suelen utilizar
convenciones distintas, que pueden estar basadas en la sintaxis de lenguajes de programacin concretos. Sin
embargo, el pseudocdigo, en general, es comprensible sin necesidad de conocer o utilizar un entorno de
programacin especfico, y es a la vez suficientemente estructurado para que su implementacin se pueda hacer
directamente a partir de l.
As el pseudodocdigo cumple con las funciones antes mencionadas para representar algo abstracto los
protocolos son los lenguajes para la programacin. Busque fuentes ms precisas para tener mayor comprensin
del tema.
Sistemas formales
La teora de autmatas y la teora de funciones recursivas proveen modelos matemticos que formalizan el
concepto de algoritmo. Los modelos ms comunes son la mquina de Turing, mquina de registro y funciones -
recursivas. Estos modelos son tan precisos como un lenguaje mquina, careciendo de expresiones coloquiales o
ambigedad, sin embargo se mantienen independientes de cualquier computadora y de cualquier
implementacin.
Implementacin
Muchos algoritmos son ideados para implementarse en un programa. Sin embargo, los algoritmos pueden ser
implementados en otros medios, como una red neuronal, un circuito elctrico o un aparato mecnico y elctrico.
Algunos algoritmos inclusive se disean especialmente para implementarse usando lpiz y papel. El algoritmo de
multiplicacin tradicional, el algoritmo de Euclides, la criba de Eratstenes y muchas formas de resolver la raz
cuadrada son slo algunos ejemplos.
Variables
Son elementos que toman valores especficos de un tipo de datos concreto. La declaracin de una variable puede
realizarse comenzando con var. Principalmente, existen dos maneras de otorgar valores iniciales a variables:
1. Mediante una sentencia de asignacin.
2. Mediante un procedimiento de entrada de datos (por ejemplo: '

Clculo del monto de pago
Una vez que tenemos las variables previamente mencionadas podremos calcular el monto de cada
uno de los pagos mensuales utilizando la funcin PAGO de Excel. Esta funcin tiene tres argumentos
obligatorios y que son precisamente nuestras variables: Tasa de inters para cada perodo, nmero
total de pagos, y monto del crdito.
Suponiendo que vamos a solicitar un crdito por un monto de $150,000 y que tenemos una tasa de
inters anual del 12% y queremos realizar 24 pagos mensuales. La frmula que debemos utilizar para
calcular el pago mensual ser similar a la siguiente:
=PAGO(1%,24,-150000)
La institucin financiera nos proporcion el dato de 12% de inters anual, pero para la funcin PAGO
necesita utilizar la tasa de inters para cada perodo, que en este caso es mensual, as que debo
hacer la divisin entre 12 para obtener el resultado de 1% de inters mensual. El segundo argumento
de la funcin es el nmero de mensualidades en las que pagaremos el rdito y finalmente el monto
del crdito. Observa el clculo del pago y la frmula implementada al leer los valores de los
argumentos de las celdas en la columna B:

Para nuestro ejemplo ha quedado un pago de $7,061.02 que tendremos que hacer durante 24 meses
para saldar nuestra deuda.
Creacin de la tabla de amortizacin
La tabla de amortizacin en Excel ser el desglose de cada uno de los pagos mensuales para
conocer el monto exacto destinado tanto al pago de intereses como al pago del capital de nuestra
deuda. El clculo de pago de intereses lo haremos con la funcin PAGOINT de Excel. Esta funcin
utilizar los mismos argumentos que la funcin PAGO pero agregar un cuarto argumento para
indicar el nmero de perodo para el cual deseamos calcular el monto del inters a pagar.
Utilizando nuestro ejemplo de prstamo, calcularemos el inters a pagar en el primer perodo
utilizando una frmula como la siguiente:
=PAGOINT(1%,1,24,-150000)
Compara esta frmula con la funcin PAGO de la seccin anterior y vers que la nica diferencia es
que el segundo argumento indica el perodo que deseamos calcular, que en este caso es el primer
perodo. Para obtener el inters a pagar en cada uno de los 24 pagos podemos implementar una tabla
como la siguiente:

Observa que la frmula de la celda E2 hace referencia a las variables de la columna B y las he
colocado comoreferencias absolutas porque deseo que dichas referencias permanezcan fijas al
momento de copiar la frmula hacia abajo. El segundo argumento de la funcin PAGOINT hace
referencia a la columna D que es precisamente donde se encuentra el nmero de pago
correspondiente.
Por el contrario, para obtener el monto que se abona mes a mes a nuestra deuda, debemos utilizar
la funcin PAGOPRIN de Excel. La sintaxis de esta funcin ser prcticamente idntica a la de la
funcin PAGOINT. Considera la siguiente frmula que nos ayuda a obtener el pago a capital para el
primer perodo:
=PAGOPRIN(1%,1,24,-150000)
De esta manera calcularemos el monto de nuestro pago mensual que estar destinado al pago de
capital de nuestra deuda. De igual manera, el segundo argumento de la funcin indica el nmero de
perodo para el cual estamos haciendo el clculo. Observa el resultado al incluir esta frmula en
nuestra tabla utilizando las variables previamente definidas:

Si revisas con detenimiento vers que la suma del pago de inters y pago a capital para todos los
perodos nos da el total obtenido con la funcin PAGO. De esta manera podemos deducir que estas
tres funciones son complementarias: La suma del resultado de las funciones PAGOINT y PAGOPRIN
siempre ser igual al resultado de la funcin PAGO.
Para finalizar nuestra tabla de amortizacin podemos agregar algunas columnas adicionales, por
ejemplo el saldo en cada uno de los perodos:

El saldo es el monto del crdito menos la suma de todos los pagos a capital realizados hasta el
momento. El saldo se va reduciendo con cada pago aunque no es una reduccin constante ya que al
inicio pagamos ms inters que al final pero en el ltimo pago llegamos a liquidar el total del monto
del crdito.
Como tal vez ya lo imaginas, si queremos cambiar nuestra tabla de amortizacin para tener 36 pagos
mensuales ser necesario agregar manualmente los nuevos registros y copiar las frmulas hacia
abajo. Es por eso que una mejor solucin para crear una tabla de amortizacin en Excel es utilizar
una macro para generar automticamente la tabla.
Macro para tabla de amortizacin en Excel
Lo nico que necesita hacer nuestra macro es leer los valores de la columna B e insertar las frmulas
correspondientes en cada fila de acuerdo al nmero de pagos a realizar. Para ello agregar un botn
de comando ActiveX en la hoja y colocar el siguiente cdigo en el evento Click del botn:
1
2
3
Private Sub CommandButton1_Click()

'Limpiar el contenido de las celdas antes de iniciar
4
5
6
7
8
9
10
11
12
13
14
15
16
17
Range("D2:G1200").ClearContents

'Obtener el nmero de pagos de la celda B3
num_pagos = Range("B3").Value

'Para cada fila de pago insertar las frmulas correspondientes
For i = 1 To num_pagos
Cells(i + 1, 4).Value = i
Cells(i + 1, 5).Formula = "=IPMT($B$2/12,D" & i + 1 & ",$B$3,-$B$1)"
Cells(i + 1, 6).Formula = "=PPMT($B$2/12,D" & i + 1 & ",$B$3,-$B$1)"
Cells(i + 1, 7).Formula = "=$B$1-SUM($F$2:F" & i + 1 & ")"
Next i

End Sub
Las lneas 12, 13 y 14 son las encargadas de insertar las frmulas que harn los clculos y en VBA
debemos utilizar el nombre de las funciones en ingls o de lo contrario obtendremos un error
#NOMBRE? en nuestra hoja de Excel. Al momento de pulsar el botn se insertarn las frmulas en
las celdas correspondientes.

Con esto hemos terminado el desarrollo de una tabla de amortizacin en Excel que ser funcional
para conocer el detalle de los pagos necesarios para liquidar una deuda. Puedes descargar el libro de
trabajo el cual contiene dos hojas, en la primera encontrars la solucin que tiene solo las frmulas y
en la segunda hoja la que contiene la macro.

Potrebbero piacerti anche