Академический Документы
Профессиональный Документы
Культура Документы
Bogot D.C
Universidad Distrital Francisco Jos de Caldas
Facultad Tecnolgica
Tecnologa Industrial
Aplicaciones Computacionales
Febrero de 2017
ALGORITMOS
Definicin: un algoritmo es un conjunto secuencial de pasos lgicos, ordenados y finitos con los
cuales se puede dar solucin a un problema determinado.
Clasificacin de algoritmos: Los algoritmos se pueden clasificar en cuatro tipos:
Algoritmo computacional: Es un algoritmo que puede ser ejecutado en una
computadora. Ejemplo: Frmula aplicada para un clculo de la raz cuadrada de un valor
x.
Algoritmo no computacional: Es un algoritmo que no requiere de una computadora para
ser ejecutado. Ejemplo: Instalacin de un equipo de sonido.
Algoritmo cualitativo: Un algoritmo es cualitativo cuando en sus pasos o instrucciones
no estn involucrados clculos numricos. Ejemplos: Las instrucciones para desarrollar
una actividad fsica, encontrar un tesoro.
Algoritmo cuantitativo: Una algoritmo es cuantitativo cuando en sus pasos o
instrucciones involucran clculos numricos. Ejemplo: Solucin de una ecuacin de
segundo grado.
Tcnicas para crear un algoritmo
1. Diagrama de Flujo
Un diagrama de flujo es la representacin grfica de un algoritmo. Tambin se puede decir que es
la representacin detallada en forma grfica de cmo deben realizarse los pasos en la
computadora para producir resultados. Esta representacin grfica se da cuando varios smbolos
(que indican diferentes procesos en la computadora), se relacionan entre s mediante lneas que
indican el orden en que se deben ejecutar los procesos. Los smbolos utilizados han sido
normalizados por el instituto norteamericano de normalizacin (ANSI):
2. Pseudocdigo
Mezcla de lenguaje de programacin y espaol (o ingls o cualquier otro idioma) que se emplea,
dentro de la programacin estructurada, para realizar el diseo de un programa. En esencial, el
Pseudocdigo se puede definir como un lenguaje de especificaciones de algoritmos. Es la
representacin narrativa de los pasos que debe seguir un algoritmo para dar solucin a un
problema determinado. El Pseudocdigo utiliza palabras que indican el proceso a realizar.
Ventajas de utilizar un Pseudocdigo a un Diagrama de Flujo: Ocupa menos espacio en una hoja
de papel Permite representar en forma fcil operaciones repetitivas complejas. Es muy fcil pasar
de Pseudocdigo a un programa en algn lenguaje de programacin. Si se siguen las reglas se
puede observar claramente los niveles que tiene cada operacin.
3. Diagrama estructurado Nassi- Schneiderman
El diagrama estructurado N-S es una tcnica hibrida (una mezcla) entre Diagramas de Flujo y
Pseudocdigo. Esta tcnica, tambin conocida como Diagrama de Chapn, utiliza una serie de
cajas, similar a los diagramas de flujos, pero no requiere la utilizacin de flechas, debido a que su
flujo siempre es descendente.
Caractersticas de un buen diagrama Nassi-Schneiderman:
En la primera caja debe ir el nombre o ttulo del algoritmo, en el recuadro siguiente debe ir la
palabra Inicio.
La ltima instruccin de un Diagrama NS debe ser el recuadro Fin.
Todas las declaraciones de variables, funciones deben estar especificadas bajo el recuadro que
contiene la palabra Inicio.
Las estructuras de seleccin y cclicas deben estar lo ms clara posible
El diseo debe caer en una hoja, a excepcin de la utilizacin de funciones, las cuales pueden
estar en otra hoja, debido a que se consideran un algoritmo diferente.
Desventajas de los diagramas NS:
En algoritmos extensos su diseo es muy difcil de comprender.
La mantencin modificacin de este tipo de diagramas es tediosa.
Requiere de hojas muy extensas para ser escrito, debido a que carece de conectores que
permitan su conexin con otras hojas.
Smbolo Descripcin
Declaracin de Variables.
Estructura de Decisin.
A, B,C, Z,
Carcter a,b,,z,$,@, %,,0,1,2,3,4,5,6,7,8,9
Nmeros con
Real punto decimal
Numero que no
Entero tiene decimales
Verdadero,
Lgico Falso
Cadena[n]
Donde n es un
nmero entero que indica
cuantos caracteres
puede tener la palabra o frase Palabras o frases
ms grande que va almacenar
la variable.
2. Entrada de datos: son los datos o variables declaradas que el algoritmo necesita para ser
ejecutado
3. Proceso: es la secuencia de pasos que son necesarios para ejecutar el algoritmo.
3.1 Subprocesos: son cdigos utilizados para dividir un programa en partes de menor
tamao de las cuales cada una tendr una tarea especfica a realizar.
3.1.1 Frmula: Una frmula es una secuencia o cadena de caracteres cuyos smbolos
pertenecen a un lenguaje formal, de tal manera que la expresin cumple ciertas reglas
de buena formacin y que admite una interpretacin consistente en alguna rea de
la matemtica y en otros sistemas formales.
3.1.2 Expresiones: Las expresiones son combinaciones de constantes, variables, smbolos
de operacin, parntesis y nombres de funciones especiales. Por ejemplo:(x +
y)/2Cada expresin produce un resultado que se determina tomando los valores delas
variables y constantes implicadas y la ejecucin de las operaciones indicadas. Una
expresin consta de operadores y operandos. Un operando es una de las entradas
(argumentos) de un operador. Por ejemplo, en5 + 2 = 7Los operandos son 5 y 2, el
signo +, es el operador y 7 es el resultado de la expresin. Todo operador debe estar
entre 2 operandos.
Operando (Operador) Operando = Valor(Constante o Variable)
Segn sea el tipo de datos que manipulan, las expresiones se clasifican en:
Aritmticas
Relacinales o condicionales
Lgicas
Nota: Si existe sola una instruccin o sentencia dentro de la condicin no es necesario marcarlos
con inicio y fin, en caso contrario si, como se muestra en el diagrama anterior.
Selectiva doble o compuesta.- evala una condicin, si esta es verdadera ejecuta la accin o
acciones especificadas, si es falsa ejecuta otra accin o acciones.
Nota: Si existe sola una instruccin o sentencia dentro de la condicin no es necesario marcarlos
con inicio y fin como en este caso que la condicin fue falsa, en caso contrario si, en este
ejemplo cuando la condicin fue verdadera.
c) Iteracin o cclica: Repeticin de una o varias operaciones mientras se cumpla una condicin.
Las estructuras cclicas se utilizan para ejecutar fragmentos de cdigo un nmero limitado de
veces. Existen tres estructuras cclicas generales, las cuales son:
Desde Hasta (For)
Hacer Mientras (While)
Hacer Hasta (Do While)
Las tres estructuras tienen el mismo objetivo, ejecutar un fragmento de cdigo un nmero
limitado de veces, su principal diferencia se encuentra en la forma en la cual limitan el nmero
de ocasiones que se ejecutar el cdigo.
4. Salida de resultados: son los datos obtenidos despus de la ejecucin del algoritmo.
5. Datos: es la expresin general que describe los objetivos con los cuales opera una
computadora.
5.1 Tipos de datos:
Simples: pueden ser:
*Numricos: entre los cuales se tienen:
-Enteros: nmeros complejos, no tienen fraccionarios o decimales y pueden ser positivos
o negativos.
-Reales: son nmeros que siempre tienen un punto decimal, pueden ser positivos o
negativos, constan de una parte entera y un decimal.
*Alfanumricos: secuencia de caracteres alfanumricos que representan valores
identificables de forma descriptiva, como el nombre de personas, direcciones, etc.
-Caracteres: conjunto finito y ordenados de datos que la computadora reconoce
(alfabticos, numricos, especiales (+,-,*,/, etc.))
-Cadena de caracteres: sucesin que se encuentran delimitados por una comilla o dobles
comillas: (Hola Mundo, 24 de Junio de 2010, etc.)
*Lgicos: tambin denominado booleano es aquel dato que solo puede tomar uno de dos
valores: cierto o verdadero (true) y falso (false).
Los dems caracteres pueden ser letras, dgitos o el caracter especial de subrayado (_)
No deber coincidir con palabras reservadas del lenguaje algortmico. (Ejemplo: Var,
Const, Entero, Real, etc.)
La longitud de los identificadores puede ser de hasta 8 caracteres. Este valor depender
del lenguaje de programacin que est estudiando
FUNCIONES
Palabra reservada: son las que tienen un uso determinado con base en el lenguaje, por lo tanto
no pueden ser empleadas como identificadores de variables, funciones, procedimientos, objetos,
etc.
OPERADORES
Todo sistema de computacin es alimentado con datos. La representacin de los datos incide en
la elaboracin de los algoritmos. El sistema de identificacin de los datos se denomina
estructura de datos, y depende de las caractersticas de estos.
a) Datos numricos:
Enteros.
Reales.
Reales decimales.
Reales exponenciales.
b) Datos alfanumricos:
De carcter.
De cadena.
c) Datos lgicos:
Verdadero [True]
Falso [False]
-Tipos de datos: numricos
Enteros; corresponden a nmeros completos, o sea que no tienen parte decimal, pueden ser
negativos, positivos o cero. Ejemplo: La edad de una persona (39), el total de estudiantes en un
grupo (36).
Reales; son aquellos nmeros que poseen punto decimal. Pueden ser negativos, positivos o cero.
Reales decimales; son los que constan de una parte entera y una decimal (en algunos casos se
puede omitir la parte entera o la decimal). Ejemplo: La nota de un estudiante (4.7), el porcentaje
de algn impuesto (0.16).
Reales exponenciales (de punto flotante); son aquellos nmeros que se expresan en funcin de
potencias de 10; esta expresin es conocida como notacin cientfica. Ejemplo: -2.85E03;
0.735E-4; 0.58E-1
Carcter; cundo se hace referencia a un solo carcter, y debe encerrarse entre apostrofes ( ).
Ej: Sexo de una persona (M o F), estado civil (S, C, V).
Cadena; Cundo se hace referencia a ms de un carcter, siempre debe encerrarse entre comillas
( ). Ej: cdigo de un estudiante (2041220), nombre de una persona (Vctor Hugo Torres),
direccin donde reside una persona (Calle 100 # 50 - 20), nmero telefnico (3002125820).
Carcter: Cuando solo queremos un solo carcter de un dato y se encierra entre apostrofes ( ).
Operadores
Un operador es un smbolo que se utiliza para manipular datos. Los operadores se clasifican en:
Aritmticos.
Relacionales.
Lgicos.
Operadores Aritmticos:
+ Suma
- Resta
* Multiplicacin
/ Divisin (div)
% Mdulo o residuo (Mod)
^ ** Potencia
= Asignacin
Operadores: Relacionales
Operadores: Lgicos
La prioridad entre operadores puede variar en funcin del lenguaje informtico que utilicemos.
Consideraremos estas prioridades: Operadores matemticos > Operadores de comparacin >
Operadores de negacin, conjuncin o disyuncin.
Referencias
1. http://informaticafrida.blogspot.com.co/2009/03/algoritmo.html
2. https://compartiendoinformatica.wordpress.com/2011/11/15/partes-en-un-algoritmo/
3. https://sites.google.com/site/programacionbasicajava/Algoritmo/tecnicas-para-crear-un-
algoritmo
4. http://colabora.inacap.cl/sitios/merlot/Materiales
%20MerlotChile/mlcastro/Negocios/Contabilidad/auditoria_computacion_contabilidad_e
stadistica/computacion/contenido_multimedia/elementos_de_programacion/4_3.html
5. http://guillermopardos.blogspot.com.co/2013/04/pseudocodigo-sub-procesos.html
6. https://es.scribd.com/doc/86588280/ALGORITMOS-EXPRESIONES
7. http://pavlov-udavinci.blogspot.com.co/2012/03/estructuras-de-control.html
8. http://es.slideshare.net/bakura4/tiposde-datos1
9. http://claseinfo.blogia.com/temas/identificadores/
10. https://es.wikipedia.org/wiki/F%C3%B3rmula_(expresi%C3%B3n)
11. http://www.alegsa.com.ar/Dic/funcion.php
12. http://www.alegsa.com.ar/Dic/sentencia_de_programacion.php
13. http://gy94bfmv.blogspot.com.co/2012/10/tipos-de-datos-y-operadores-en.html
14. http://aprenderaprogramar.com/index.php?
option=com_content&view=article&id=276:prioridad-entre-operadores-orden-de-
prelacion-exponenciacion-mod-div-logicos-etc-cu00133a&catid=28:curso-bases-
programacion-nivel-i&Itemid=59