Documente Academic
Documente Profesional
Documente Cultură
Proceso de la informacin
DATOS DE
ENTRADA
PROCESO
DATOS DE
SALIDA
CPU
Dispositivos
de entrada
Unidad
Control
Unidad
Arit-Log
Memoria
Dispositivos
de salida
Algoritmo
La palabra deriva de la palabra rabe Alkhowarizmi,
nombre de un matemtico y astrnomo rabe que
escribi un tratado sobre manipulacin de nmeros y
ecuaciones en el siglo IX
Se define como la serie de pasos organizados que
describe el proceso que se debe seguir para dar solucin
a un problema especfico
Estos pasos son acciones primitivas, es decir, el
procesador es capaz de ejecutarlas sin informacin
suplementaria
ALGORITMO
Para los mismos datos de
entrada se producen los
mismos datos de salida
Determinstico
No Determinstico
Cualitativos y Cuantitativos
PROGRAMACIN ESTRUCTURADA
Es una tcnica de programacin que implica que:
El programa completo tiene diseo modular.
Los mdulos se disean siguiendo metodologa
descendente (Top Down).
Cada mdulo se codifica utilizando las 3 estructuras
bsicas de control, lo que minimiza la complejidad de los
programas y reduce errores.
Todo esto con el fin de reducir el tiempo requerido para
escribir, verificar, depurar y mantener un programa.
Ejemplo
Calcular la media aritmtica de dos nmeros con una
calculadora
1.Pulsar tecla AC
2.Teclear el primer nmero
3.Pulsar la tecla +
4.Teclear el segundo nmero
5. Pulsar la tecla +
6.Pulsar la tecla /
7. Teclear el nmero 2
8.Pulsar la tecla =
Mantenimiento
Errores
Modificaciones y adaptaciones
Elementos de un algoritmo
Datos, tipos de datos y operaciones primitivas
Variables, constantes y expresiones
Operaciones de asignacin
Operaciones de entrada y salida
Estructuras de control
Datos:
Informacin con la cual trabaja la computadora
Tipos de datos:
Se clasifican atendiendo a:
Propiedades
Operaciones que se pueden realizar
Datos Simples:
Numrico (Real o entero)
Carcter (Letras, smbolos, nmeros)
Lgico (Verdadero o Falso)
Datos compuestos
Formados por agrupaciones de otros datos (arreglos,
registros, archivos, apuntadores)
Operaciones primitivas:
Se realizan directamente en un lenguaje de programacin sin
indicar como hay que llevarla a cabo
Numrico: Suma, resta, divisin, multiplicacin
Carcter y numrico: <, >, = =, < =, >=, !=
Lgico
A
B AyB
AoB
No B
V
V V V F
V
F F V V
F
V F V F
F
F F F V
Variable:
Entidad que posee un valor y es conocido en un
programa o algoritmo por su nombre (identificador)
El valor de una variable puede cambiar a lo largo del
algoritmo
Todas las variables son de un determinado tipo y
slo pueden tomar valores de ese tipo
Se clasifican por:
Contenido
Numricas
Lgicas
Alfanumricas (String)
Uso
De trabajo
Contadores
Acumuladores
Constante:
Entidad que posee un valor y es conocido por el algoritmo
por su nombre
El valor de una constante no puede cambiar a lo largo del
algoritmo
Se debe inicializar, es decir, se asigna a un identificador su
primer y nico valor
Todas las constante de un determinado tipo slo pueden
inicializarse con valores de ese tipo
Valor constante:
Son valores que aparecen explcitamente en un algoritmo y
no tiene identificador asignado
Identificador:
Representan los datos de un programa.
Un identificador es una secuencia de caracteres que
sirve para identificar una posicin en la memoria de la
computadora, que nos permite accesar a su contenido
Reglas
Debe comenzar con una letra y no contener espacios en
blanco
Letras, dgitos y caracteres como la subraya (_) estn
permitidos despus del primer carcter
La longitud puede ser hasta 8 caracteres
Ejemplo: Num_hrs
Calif3
Expresiones:
Son combinaciones de constantes, variables,
smbolos de operacin, parntesis y nombre de
funciones especiales
Cada expresin toma un valor determinado de
acuerdo a las variables y constantes implicadas y la
ejecucin de las operaciones indicadas
Consta de operadores y operandos
Operaciones de asignacin:
Corresponde a darle a una variable un determinado
valor
A una variable se le puede asignar
un valor constante
el valor de otra variable
el valor de una constante
el resultado de evaluar una expresin
Estructuras de control:
Secuencial
Una accin sigue a la otra sin romper la secuencia
Condicional
Se realiza una accin u otra dependiendo del resultado de la
evaluacin de una expresin lgica
Pueden ser simples ( Si entonces), dobles (Si entonces si no),
mltiples (Si entonces si no varias alternativas)
Repetitiva o iterativa
Se repite un conjunto de acciones 1 o ms veces
Hacer-Para
Hacer Mientras
Repetir Hasta
Representacin de un algoritmo
Un algoritmo puede ser escrito en lenguaje natural, pero
esta descripcin puede ser ambigua, por lo que se
utilizan diferentes mtodos de representacin, que
permiten evitar dicha ambigedad y permitir al mismo
tiempo que sea fcilmente codificable. Los mtodos
ms usuales para la representacin de algoritmos son:
Descripcin narrada
Pseudocdigo
Diagrama de flujo
DESCRIPCIN NARRADA
Es la forma ms sencilla de describir o expresar un
algoritmo. Consiste en dar un relato de la solucin en
lenguaje natural.
Por ejemplo: Algoritmo en descripcin narrada para la suma
de 2 nmeros.
1. Obtener los nmeros a sumar
2. Sumar los nmeros
3. Anotar el resultado
El uso del lenguaje natural provoca frecuentemente que la
descripcin sea imprecisa y poco confiable, por lo que este
tipo de representacin no es recomendable.
Ejemplos de algoritmos
Disear un algoritmo para cambiar una llanta a un carro.
Inicio.
Traer gata.
Aflojar tornillos de las llantas.
Levantar el carro con la gata
Sacar los tornillos de las llantas.
Quitar la llanta.
Poner la llanta de repuesto.
Poner los tornillos.
Bajar la gata
Apretar los tornillos.
Fin
Ejemplos de algoritmos
Un cliente ejecuta un pedido a una fbrica. La fbrica examina en su banco de
datos la ficha del cliente, si el cliente es solvente entonces la empresa acepta el
pedido, en caso contrario rechazar el pedido.
Pasos del algoritmo :
Inicio
Leer el pedido
Examinar ficha del cliente
Si el cliente es solvente aceptar pedido, en caso contrario rechazar
pedido
Fin
PSEUDOCDIGO
El pseudocdigo en un lenguaje de especificacin de
algoritmos que utiliza palabras reservadas y exige la
tabulacin, o sea, sangra en el margen izquierdo, de
algunas lneas.
Se concibi para superar las dos principales desventajas de
los diagramas de flujo: Lento de crear y difcil de modificar
sin un nuevo redibujo. Es una herramienta muy efectiva para
el seguimiento de la lgica de un algoritmo y para
transformar con facilidad los algoritmos a programas.
Pseudocdigo
Mezcla de lenguaje de programacin y un idioma que se
emplea
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 una solucin a un problema
El pseudocdigo utiliza palabras que indican el proceso a
realizar
Es lejos el mtodo ms empleado ya que permite en forma
fcil representar las operaciones repetitivas complejas y
pasar a un lenguaje de programacin
Ejemplo de pseudocdigo
DIAGRAMA DE FLUJO
Es la representacin grfica de un algoritmo. Utiliza smbolos
normalizados, con los pasos del algoritmo escritos en el
smbolo adecuado y los smbolos unidos por flechas,
denominadas lneas de flujo, que indican el orden en que
los pasos deben ser ejecutados.
Diagrama de Flujo
Es la representacin grfica de un algoritmo
Esta representacin se da cuando varios smbolos se
relacionan entre s mediante lneas que indican el orden en
que se deben ejecutar los procesos
Los smbolos han sido normalizados por la ANSI
Recomendaciones
Usar lneas de flujo horizontales y/o verticales
Evitar cruce de lneas utilizando conectores
Usar conectores slo cuando sea necesario
Se trazan los smbolos de manera de leer de arriba abajo y de
izquierda a derecha
El texto escrito dentro del smbolo debe ser clara