Story Transcript
PROGRAMACIÓN ALGORITMOS y DIAGRAMAS
ALGORITMO DEFINICIÓN:
CONSISTE EN LA DESCRIPCIÓN CLARA Y DETALLADA DEL PROCEDIMIENTO A SEGUIR PARA ALCANZAR LA SOLUCIÓN A UN PROBLEMA ESTABLECIENDOSE UNA SECUENCIA DE PASOS O INSTRUCCIONES A EJECUTAR DE FORMA LÓGICA.
DIAGRAMA DE FLUJO DEFINICIÓN:
DESCRIPCIÓN CLARA Y DETALLADA DE UN PROCESO O UN PROBLEMA A TRAVES DE UNA SECUENCIA LOGICA DE PASOS O INSTRUCCIONES A EJECUTAR DE FORMA GRAFICA.
CARACTERISTICAS PRECISO : EL ORDEN DE REALIZACIÓN DE LAS OPERACIONES DEBE ESTAR
DADO EN FORMA CLARA. TODOS LOS POSIBLES CAMINOS DE SOLUCIÓN DEBEN APARECER RECOGIDOS EN EL.
FINITO : DEBE TERMINAR EN UN MOMENTO DETERMINADO DESPUÉS DE
EJECUTAR UN NÚMERO FINITO DE PASOS.
DEBE ESTAR EXPRESADO EN INSTRUCCIONES ELEMENTALES : LAS
INSTRUCCIONES QUE COMPONEN EL ALGORTIMO DEBEN ESTAR A NIVEL, SER REPRESENTABLE, DEL LENGUAJE DE PROGRAMACIÓN A UTILIZAR.
DEBE SER GENERAL : DEBE ESTAR ORIENTADO A LA RESOLUCIÓN DE
PROBLEMAS GENERALES MÁS QUE ESPECIFICOS.
PASOS PARA RESOLVER UN PROBLEMA UTILIZANDO LA COMPUTADORA -Definición del Problema a Resolver -Determinación del Método de Solución más factible
ANALISIS DEL PROBLEMA Y DISEÑO DEL PROGRAMA
-Especificación de los datos de entrada y
los resultados de salida - Diseño de Algoritmo - Codificación del Algoritmo
INSTALACIÓN Y PUESTA A PUNTO DE UN PROGRAMA:
-Compilador
- Interprete
INSTRUCCIONES BASICAS Instrucción de Asignación: Indica la ejecución de operaciones matemáticas, literales o lógicas cuyo resultado final es asignada a cierta entidad, obedece a la siguiente forma general: Variable = expresión Instrucción de Entrada –Salida : Son instrucciones de transferencia de
información de un dispositivo externo a la computadora (entrada) o viceversa (salida). Instrucción de Selección (de Decisión) : Permite la elección de un camino de solución entre varios posibles en base al examen de ciertas consideraciones .
INSTRUCCIONES BASICAS Instrucción Repetitivas : Estas Instrucciones permiten la ejecución repetida de un conjunto de Instrucciones un número determinado de
veces.
DEFINICIONES BÁSICAS
VARIABLE : Se refiere a una posición en memoria cuyo valor puede variar durante la ejecución de un programa. NUMERICAS
-CONTENIDO Clasificación de las Variables
LÓGICAS
ALFANUMERICAS
ACUMULADOR DE SUMA ACUMULADOR DE PRODUCTO
- USO
CONTADOR VARIABLE DE CONTROL INDICADOR INTERRUPTOR APUNTADOR
DEFINICIONES BÁSICAS Acumulador de SUMA: Contiene el resultado de la suma de varios términos en donde esta suma se define a través de la ejecución repetida de un grupo de instrucciones en donde en cada ejecución se suma el nuevo término.
Acumulador de PRODUCTO: La variable va a contener el resultado del producto de varios términos en donde este producto se define a través de la ejecución repetida de un grupo de instrucciones en donde en cada ejecución se multiplica el nuevo término.
DEFINICIONES BÁSICAS CONTADOR: El uso de la variable en este caso es el de llevar la cuenta del número de veces que una determinada situación se presentó. VARIABLE CONTROL : Esta variable permite establecer el número de veces que la ejecución de un determinado grupo de Instrucciones se va a ejecutar. INDICADOR : Es una variable que puede tomar valores de varios valores establecidos durante la ejecución de un programa, el valor inicial de la variable cambia cuando una determinada situación se presenta.
DEFINICIONES BÁSICAS INTERRUPTOR : Es una variable indicador que solo puede tomar dos valores posibles . Por eso también se le llama Conmutador , Switch, Bandera. APUNTADOR : Es una variable cuyo valor establece la ubicación de una determinada información.
DEFINICIONES BÁSICAS CONSTANTE: Se refiere a una posición en memoria cuyo valor Permanece inalterado durante la ejecución de un programa y está asociado a cierto tipos de datos .
EXPRESIÓN : Es una combinación de variables, constantes, Operaciones y referencia a funciones que expresan cálculos Aritméticos , literales y /o lógicos.
TECNICAS DE REPRESENTACIÓN DE ALGORTITMO Una Técnica de Representación de Algoritmo es una técnica para la representación de los algoritmo en donde a través de convenciones y el empleo de símbolos estandarizados se expresa en forma clara el proceso establecido en el algoritmo. TIPOS Las técnicas más utilizadas son las siguientes: - Diagrama de Flujo - Seudolenguaje - Diagrama N-S
Estructuras algorítmicas básicas Es posible demostrar que cualquier problema puede reducirse, utilizando sólo las siguientes estructuras algorítmicas: Estructura secuencial, Estructura condicional y Estructura repetitiva ( o lazo repetitivo).
Estructura Secuencial Acción 1 -> Acción 2 -> Acción 3 -> ... La solución del problema consiste en la solución de subproblemas parciales, en forma consecutiva.
Estructuras algorítmicas básicas Estructura Secuencial Las acciones propiamente dichas van desde operaciones de entrada/salida (como ingresar números por teclado o imprimir un número por pantalla), operaciones matemáticas o de manejo de caracteres, otras estructuras algorítmicas y hasta otros algoritmos ya resueltos (llamado procedimientos, funciones o subrutinas en los distintos lenguajes). Por ejemplo: supongamos que queremos dividir dos números a y b...
Ingresar número a; Ingresar número b; Dividir a y b; Imprimir el resultado;
Estructuras algorítmicas básicas Estructura Condicional En este caso la solución del problema conduce a que, según se cumpla cierta condición o no, se ejecute una u otra de dos acciones diferentes. Si Condición Entonces Grupo de Instrucciones 1 Sino Grupo de Instrucciones 2 FinSi
Estructuras algorítmicas básicas Estructura Condicional Ejemplo: Ingresar número a; Ingresar número b; Si b es igual a 0 Imprimir mensaje de error; Sino Dividir a y b; Imprimir el resultado; FinSi
Estructuras algorítmicas básicas Estructura Repetitiva En este caso, la solución del problema consiste en la repetición de una acción más sencilla mientras se cumpla cierta condición. Resulta evidente que para que esta sucesión de acciones termine, la acción misma debe modificar por lo menos una de las variables que intervienen en la condición. Cada vez que se ejecuta la acción la llamaremos iteración. Mientras Condición Hacer Acción FinMientras
Estructuras algorítmicas básicas Estructura Repetitiva. Ejemplo: Como se observa, la evaluación de la condición se realiza antes de ejecutar cada una de las iteraciones; es decir que si la condición no se cumple la primera vez que llegamos a este lazo, la acción no se ejecutará nunca. Ejemplo: calcular el factorial de un número n. Ingresar número n; Inicializar factorial en 1; Mientras n sea mayor que 1 multiplicar factorial por n; guardar resultado en factorial; disminuir n en 1; FinMientras Imprimir factorial;
Estructuras algorítmicas básicas Estructura Repetitiva basada en un Contador En este caso, la solución del problema consiste en la repetición de una acción más sencilla mientras se va ejecutando la acumulación automática de un valor en un contador. Resulta evidente que para que esta sucesión de acciones termine, el contador debe llegar hasta el valor final indicado en la instrucción. Cada vez que se ejecuta la acción la llamaremos iteración. Para Contador=VI, VF, Inc/Dec hacer Grupo de Instrucciones FinPara.
Estructuras algorítmicas básicas Estructura Repetitiva basada en un Contador Ejemplo: Ingresar número n; Inicializar factorial en 1; Para Contador = n, 1, -1 hacer multiplicar factorial por n; guardar resultado en factorial; FinPara Imprimir factorial;
TECNICAS DE REPRESENTACIÓN DE ALGORITMO Diagrama de Flujo : Utiliza símbolos específicos para la representación de operaciones especificas. SIMBOLOS EMPLEADOS EN EL DIAGRAMA DE FLUJO
Inicio / Fin
Entrada y Salida por cualquier dispositivo.
Proceso
Entrada por teclado
Conector de diagrama de flujo de una misma página
Conector de diagrama de flujo de páginas diferentes
TECNICAS DE REPRESENTACIÓN DE ALGORITMO SIMBOLOS EMPLEADOS EN EL DIAGRAMA DE FLUJO
Impresión por pantalla
Impresión por impresora
Proceso repetitivo controlado por variable de control
Entrada y Salida por disco Magnético
Subrutina
comentarios Lìneas de Flujo
TECNICAS DE REPRESENTACIÓN DE ALGORITMO SIMBOLOS EMPLEADOS EN EL DIAGRAMA DE FLUJO Estructura Selectiva Doble
Estructura Selectiva Simple
f condición
f
v condición
v acción
Acción 2
Acción 1
TECNICAS DE REPRESENTACIÓN DE ALGORITMO SIMBOLOS EMPLEADOS EN EL DIAGRAMA DE FLUJO
Estructura Selectiva Múltiple
expresión
acción1
acción 2
acción 3
Acción n
TECNICAS DE REPRESENTACIÓN DE ALGORITMO SEUDOLENGUAJE Permite expresar las operaciones a realizar en una forma parecida a nuestro lenguaje habitual utilizando palabras reservadas con significados establecidos. Diagrama N-S El diagrama N-S utiliza símbolos gráficos o bloques en donde la secuencia de instrucciones se visualiza como una secuencia de bloques unidos , sin las flechas de unión.
PROGRAMACIÓN ESTRUCTURADA La Programación estructurada es un conjunto de técnicas orientadas a la construcción de programas confiables, correctos , legibles y depurables. Teorema de la Estructura : Todo programa con un solo punto de entrada y un solo punto de salida puede ser expresado utilizando solamente tres tipos de estructuras de control : Secuencial ,Selectivas y Repetitivas.
ESTRUCTURA SECUENCIAL Indica la ejecución incondicional de varias acciones de forma Secuencial Representación de la Estructura Secuencial en las Tres técnicas de Representación. NS DF
SL
acción1 Inicio acción2
acción n
ESTRUCTURA SELECTIVA Permite elegir una entre varias soluciones posibles. La estructura Selectiva puede ser : -Simple -Doble -Múltiple
ESTRUCTURA SIMPLE
DF
Estructura Selectiva Simple
f condició n
SL Si
Entonces
v
V
condición
Fin-si
acción
NS
acción
F
ESTRUCTURA SELECTIVA DOBLE SL Si
DF
Entonces Sino
F
Fin-si
condició n
Acción 2
NS
V
Acción 1
V
condición
acción1
F
Acción 2
ESTRUCTURA SELECTIVA MÚLTIPLE DF
SL Caso (expresión) de
Estructura Selectiva Múltiple
: : . expresión
. = valor 1
= valor 2
= valor 3 = otro
acción1
acción 2
acción 3
Acción n
. .: De otra manera Fin-caso
ESTRUCTURA SELECTIVA MÚLTIPLE NS EXPRESIÓN
= VALOR 1
= VALOR 2
= VALOR 3
= VALOR 4
acción 1
acción 2
acción 3
acción 4
= VALOR 5
= OTRO
acción 5 acción