Vous êtes sur la page 1sur 27

Algoritmos

Algoritmo


Conjunto ordenado y finito de operaciones que permite hallar la solucin de un problema. Caractersticas:  Fiable: resultados exactos y precisos  Eficiente: utilizar de forma optima los recursos del ordenador  Robusto: tener prevista una respuesta clara ante distintas situaciones  Transportable: independiente del hardware y del sistema operativo  Fcil de usar: interfaz amigable, mensajes claros y buena documentacin

Algoritmo vs Programa


Programa:  Conjunto unitario de instrucciones que permite a un ordenador realizar funciones diversas, como el tratamiento de textos, el diseo de grficos, la resolucin de problemas matemticos, el manejo de bancos de datos, etc. (RAE)  Implementacin de un algoritmo en un determinado lenguaje de programacin  Algoritmos para ser ejecutados por un ordenador Los algoritmos son independientes tanto del lenguaje de programacin en que se expresan como de la computadora que los ejecuta.

Estructura de un Algoritmo


Datos: Los datos que se pueden manejar se pueden clasificar de la siguiente forma:  Datos de tipo numrico:  Enteros: enteros positivos y negativos. El rango depende del lenguaje y del ordenador  Reales: nmeros decimales, positivos y negativos  Datos de tipo carcter:  Letras maysculas o minsculas. a , A ,  Caracteres especiales: / , + ,  Nmeros: 1 , 2 ,  Cadenas de caracteres (depende del lenguaje)  Datos de tipo lgico  Verdadero y falso

Estructura de un Algoritmo


Estructuras de datos Internas:




Estticas: Memoria en tiempo de compilacin  Registros: Agrupan elementos de diferente tipo


RegistroAlumno Nombre Apellidos Nota Asig_pendiente


Vectores: Agrupan elementos del mismo tipo 1 2 3 4 5 6 7 8 9

Estructura de un Algoritmo


Estructuras de datos Internas:




Matrices: Vectores multidimensionales


1 6 11 2 7 12 3 8 13 4 9 14 5 10 15

Dinmicas: Memoria en tiempo de ejecucin  Pilas  Colas  Listas  Arboles Ficheros: Estructura para almacenar datos en memorias externas

Estructuras de datos Externas




Estructura de un Algoritmo
Enteros Numricos Reales Carcter No Numricos Lgico Registros Datos Internas Dinamicas Estructuras Estticas Vectores Matrices Listas Colas Pilas Externas Ficheros rboles

Simples

Estructura de un Algoritmo


Operandos: datos que intervienen en las expresiones  Constantes: elementos que no varan durante la ejecucin del programa.  Variables: Elementos cuyo contenido puede modificarse durante la ejecucin de un programa.  Nombre  Tipo  Valor inicial  Segn su funcin:  Contadores, Acumuladores, Interruptores, Variables de trabajo

Estructura de un Algoritmo


Operadores: elementos que realizn operaciones sobre los operandos.  Aritmeticos:+, -, *, /, MOD, DIV, ^  Alfanumricos:+  Relacionales o condicionales:=, <, >, <=, >=, <>  Parntesis: ()  Lgicos: NOT, AND, OR Orden de evaluacin:  (), signo, ^, * / DIV MOD, + -, concatenacin, relacionales.  En caso de igual prioridad de evaluarn de izquierda a derecha. Expresiones: combinacin de operandos unidos mediante operadores

Estructura de un Algoritmo


Instrucciones: Simples  Declarativas: Se utilizan para declarar los objetos que se van a usar en el programa.  Primitivas  Entrada: toman datos del exterior  Salida: presentan al exterior resultados, mensajes, comentarios,  Asignacin: se utilizan para asignar valores a variables  De Control: permiten controlar la ejecucin de otras instrucciones bajo determinadas circunstancias  Alternativas: Ejecutan unas instrucciones u otras dependiendo de si se cumple o no una determinada condicin.  Repetitivas: Repiten otras instrucciones un numero determinado de veces.  Comentarios: favorecen la comprensin del programa

Estructura de un Algoritmo


Instrucciones: Compuestas: Conjunto de instrucciones simples agrupadas bajo un nombre.  Son llamadas desde cualquier punto del programa  Una vez ejecutadas el control vuelve a la instruccin siguiente a la llamada

Diagramas de flujo

Diagramas de flujo
Herramientas para poder representar de forma clara y visual el flujo de datos y la secuencia de ejecucin de un programa  Organigramas: representacin general del flujo de datos en el sistema.


Smbolos de entrada

Teclado


Soporte genrico

Smbolos de salida

Impresora

Pantalla

Diagramas de flujo


Smbolos de E/S

Disco magntico


Disco flexible

Smbolos de proceso

Proceso


Particin de archivos

Fusin de archivos

Lneas de flujo

Lneas de direccin

Lneas de teleproceso

Diagramas de flujo


Ejemplo de organigrama: Proceso de creacin de archivos con datos de las ventas de una empresa.
Documentos Base Entrada de datos

Creacin de archivo de ventas

Listado de ventas

Visualizacin de datos

Archivo de ventas

Diagramas de flujo


Ordinogramas: representacin general del flujo de datos del programa. Representan con mas detalle las acciones a realizar.


Inicio y fin

Entrada y salida

Proceso

Diagramas de flujo


Alternativas
Mltiple

Simple/doble


Acciones compuestas (subprogramas)

Conectores
N N

Agrupamiento de lneas de flujo Conector dentro de la pgina Conector a otra pgina

Diagramas de flujo


Lneas de flujo

Diagramas de flujo


Ejemplo: algoritmo que toma un nmero como entrada y dice si es positivo, negativo, o cero.
Inicio

Leer n

n=0

No

n>0 S

No

Escribir nulo

Escribir positivo

Escribir negativo

Fin

Pseudocdigo
El pseudocdigo describe un algoritmo utilizando una mezcla de frases en lenguaje comn, instrucciones de programacin y palabras clave que definen las estructuras bsicas.


Primitivas


Salida
ESCRIBIR

Literal Variable Constante expresion

Entrada LEER nombre variable Asignacin Literal nombre-varnombre-var-destino = Variable

Constante expresion

Pseudocdigo


Sentencias de control


Alternativas Formato condicin


Literal Variable Constante expresion Simple:

< > = <= >= <>

Literal Variable Constante expresion

SI condicin ENTONCES instruccin 1 instruccin 2 instruccin n FIN SI

Pseudocdigo


Doble: SI condicin ENTONCES instruccin 1 instruccin 2 instruccin n SINO instruccin 1 instruccin 2 instruccin n FIN SI

Pseudocdigo


Mltiple: EN CASO DE (variable) valor 1: instruccin 1 instruccin 2

valor 2: instruccin 1 instruccin 2 valor n: instruccin 1 instruccin 2 EN OTRO CASO: instruccin 1 instruccin 2 FIN

Pseudocdigo


Repetitivas:  Mientras MIENTRAS condicin HACER instruccin 1 instruccin 2 instruccin n FIN MIENTRAS Repetir hasta
REPETIR

instruccin 1 instruccin 2 instruccin n


HASTA condicin

Pseudocdigo


Para
PARA variable DE valor inicial A valor final [incremento] HACER instruccin 1 instruccin 2 instruccin n FIN PARA

Pseudocdigo


Compuestas


Declaracin SUBPROGRAMA nombre instruccin 1 instruccin 2 instruccin n FIN SUBPROGRAMA

Llamada nombrenombre-subprograma

Comentarios
**comentario

Pseudocdigo


Ejemplo
PROGRAMA signo VARIABLES n:entero ALGORITMO leer n SI n=0 ENTONCES ESCRIBIR El nmero es nulo SINO SI n>0 ENTONCES ESCRIBIR El nmero es positivo SINO ESCRIBIR El nmero es negativo FIN SI FIN SI FIN PROGRAMA

Vous aimerez peut-être aussi