PRESENTACIÓN DEL ALGORITMO

Documentos relacionados
CONTENIDO 1 Diagrama de flujo 2 Pseudocodigo 3 Diagrama estructurado (nassi-schneiderman)

Tema 5. Diagramas de flujo. Computacion - FA.CE.NA.

Pseudocódigo. La forma en que se escribe un pseudocódigo es la siguiente:

TECNICO SUPERIOR EN INFORMÁTICA EMPRESARIAL MÓDULO INTRUCCIONAL

Tema 01: Algoritmia y diagramas de flujo. Estructuras de datos (Prof. Edgardo A. Franco)

Tema 2 Conceptos básicos de programación. Fundamentos de Informática

Introducción a la programación: Algoritmos

Algoritmos y solución de problemas. Fundamentos de Programación Otoño 2008 Mtro. Luis Eduardo Pérez Bernal

2.3 DEFINICIÓN DE LENGUAJES ALGORÍTMICOS

3. TÉCNICAS DE DISEÑO

La resolución de un problema

Algoritmos. Medios de expresión de un algoritmo. Diagrama de flujo

PROGRAMACIÓN. UNIDAD II. ALGORITMO PROFA : HAU MOY

SISTEMAS INFORMÁTICOS PROGRAMACION I - Contenidos Analíticos Ing. Alejandro Guzmán M. TEMA 2. Diseño de Algoritmos

Departamento de Informática Universidad Técnica Federico Santa María. Tema 1: Algoritmos

Principios de Algoritmia

Algoritmos. Diagramas de Flujo. Informática IV. L. S. C. Heriberto Sánchez Costeira

Capítulo 1. Algoritmos, diagramas de flujo y programas.

MANUAL DE PRÁCTICAS PARA LA ASIGNATURA DE PROGRAMACION DE LA UPIBI

Conocimientos previos

Introducción a la programación

Métodos para escribir algoritmos: Diagramas de Flujo y pseudocódigo

Formato para prácticas de laboratorio

Tipos De Datos. Numéricos. Alfanuméricos (string) Arreglos (Vectores, Matrices) Estructurados Registros (Def. Por el Archivos Usuario) Apuntadores

Herramientas de Programación. M.C. Juan Carlos Olivares Rojas

ALGORÍTMICA. Dpto. Ingeniería de Sistemas y Automática Facultad de Ciencias Universidad de Valladolid.

TEMA 1: Algoritmos y programas

Universidad Rafael Urdaneta Escuela de Ingeniería de Computación

ESTRUCTURAS ALGORITMICAS

Control de Flujo. Estructuras de Control! Experiencia Educativa de Algorítmica CONTROL DE FLUJO

Constante: Una constante es un dato numérico o alfanumérico que no cambia durante la ejecución del programa.

Estructuras Administrativas

Tema II: Metodología para la construcción de programas

Diseño Estructurado de Algoritmos

Universidad Autónoma del Estado de México Facultad de Medicina

ALGORITMO, ESTRUCTURAS Y PROGRAMACIÓN I. Prof.

Conceptos fundamentales de Algoritmos

RECORDAR TIPOS DE DATOS

Área: INFORMÁTICA. Saber- Saber: Identificar DFD como herramienta para escribir los algoritmos de forma lógica.

Al igual que las instrucciones alternativas, las instrucciones repetitivas también se pueden anidar, permitiendo las siguientes combinaciones de

[TEMA #2. ETAPAS Y TÉCNICAS PARA EL DESARROLLO DE PROBLEMAS CON AYUDA DEL COMPUTADOR.]

SIMBOLOGÍA UTILIZADA EN LOS DIAGRAMAS DE FLUJO

INSTITUTO POLITECNICO NACIONAL CENTRO DE ESTUDIOS CIENTIFICOS Y TECNOLOGICOS " GONZALO VAZQUEZ VELA "

Metodología para la solución de problemas programables

Estructuras de control

Un algoritmo es una serie de pasos organizados que describe el proceso que se debe seguir, para dar solución a un problema específico.

TEMA 4. ESTRUCTURAS DE CONTROL

Estructuras de Control

ORGANIZADORES GRÁFICOS

Taller de Resolución de Problemas Computacionales

ESTRUCTURAS DE CONTROL

Guía práctica de estudio 05: Diagramas de flujo

Profesor(a): Ing. Miriam Cerón Brito

la solución a una ecuación cuadrática solicitando al usuario los términos de dicha ecuación.

Tema 2 Introducción a la Programación en C.

Tipos algebraicos y abstractos. Algoritmos y Estructuras de Datos I. Tipos algebraicos

Facultad de Química. Departamento de Química Analítica. Química Analítica Experimental I DIAGRAMA DE FLUJO. Joaquín Preza.

Capítulo 2 : ALGORITMOS

Proceso de información en la computadora

Distinguir las diferentes estructuras de repetición utilizadas en problemas con bucles: mientras, repetir mientras, para.

Resolución de problemas mediante algoritmos

Estructuras Condicionales

: Algorítmica y Estructura de Datos I

Diseño de algoritmos

Tema II: Metodología para la construcción de programas. Profesora: Nelly García Mora

Escribir programas a partir de un diagrama de flujo

TEMA 2 METODOLOGÍA DE LA PROGRAMACIÓN

Programación Estructurada

Fundamentos de Programación. Flujo de Control I: Estructuras selectivas

Estructuras Secuénciales

Desarrollo de Programas. Prof. Lisbeth C. Pérez Rivas

Programación en java. Estructuras algorítmicas

INSTITUTO POLITECNICO NACIONAL UNIDAD PROFESIONAL INTERDISCIPLINARIA DE BIOTECNOLOGIA DEPARTAMENTO DE CIENCIAS BASICAS

DES: Programa(s) Educativo(s): Tipo de materia: Clave de la materia: Semestre: Área en plan de estudios:

TEMA 2: ALGORITMOS Y PROGRAMAS

UNIDAD ACADÉMICA PROFESIONAL TIANGUISTENCO

Es un conjunto de palabras y símbolos que permiten al usuario generar comandos e instrucciones para que la computadora los ejecute.

Crear gráficos en Excel Un gráfico es la representación gráfica de los datos de una hoja de cálculo y facilita su interpretación.

Tema: Uso del programa DFD

Algoritmos. Definiciones básicas y componentes de un algoritmo. Contenido

Introducción a la Informática Estructuras de control repetitivas

Cristian Blanco

[ GUÍA DIDÁCTICA: DESARROLLO DE ALGORITMOS PSEINT] 11 de julio de 2013

TEMA 2. CONCEPTOS BÁSICOS DE ALGORÍTMICA

Diagramas de flujo. Actividad de aprendizaje 9. Realiza la siguiente lectura:

Programación Estructurada. Sesión 4:Estructuras de control

PLANEACION TACTICA Y OPERATIVA FUNDACIÓN UNIVERSITARIA TECNOLÓGICO COMFENALCO

ESCUELA POLITÉCNICA SUPERIOR PRÁCTICA 2: EXPRESIONES, PRINTF Y SCANF

UNIVERSIDAD NACIONAL EXPERIMENTAL DE GUAYANA VICERRECTORADO ACADÉMICO COORDINACION DE PRE-GRADO PROYECTO DE CARRERA DE INGENIERIA INDUSTRIAL

TUTORIAL PSEINT. Ing. Ronald Rentería Ayquipa. Fundamentos de Programación

Algoritmos y Programas

GENERALIDADES DEL LENGUAJE C

Uso Pseudocódigo Diagrama de flujo Codificación

Expositor: Mauricio Galvez Legua

Programcaión Básica. Secuencias de Control y Repetición. Arturo Vega González.

Maquina de Turing. 5. Fundamentos de algoritmos. Turing TURING TURING 10/08/2010. MI Elizabeth Fonseca Chávez

LENGUAJE DE PROGRAMACION UNO.

Diseño Estructurado de Algoritmos

Para ver una explicación detallada de cada gráfica, haga Click sobre el nombre.

Transcripción:

PRESENTACIÓN DEL ALGORITMO Puede ser en distintas formas, analizaremos cuatro: a) Descripción Narrada b) Pseudocódigo c) Diagramas de Flujo d) Diagramas N- S (Nassi-Schneiderman o de Chapin) Descripción Narrada Este algoritmo es caracterizado porque sigue un proceso de ejecución común y lógico, describiendo textualmente paso a paso cada una de las actividades a realizar dentro de una actividad determinada. Ejemplo 1 Algoritmo para asistir a clases: 1. Levantarse 2. Bañarse 3. Vestirse 4. Desayunar 5. Cepillarse los dientes 6. Salir de casa 7. Tomar el autobús 8. Llegar al ITCA 9. Buscar el aula 10. Ubicarse en un asiento Descripción en Pseudocódigo Pseudo = falso. El pseudo código no es realmente un código sino una imitación y una versión abreviada de instrucciones reales para las computadoras. Es una técnica para diseño de programas que permite definir las estructuras de datos, las operaciones que se aplicarán a los datos y la lógica que tendrá el programa de computadora para solucionar un determinado problema. Utiliza un pseudolenguaje muy parecido a nuestro idioma, pero que respeta las directrices y los elementos de los lenguajes de programación. Se concibió para superar las dos principales desventajas de los flujogramas: lento de crear y difícil de modificar sin un nuevo redibujo. Ejemplo 1 Diseñar un algoritmo que lea cuatro variables y calcule e imprima su producto, suma y media aritmética. inicio leer (a, b, c, d) producto <-- (a * b * c * d) suma <-- (a + b + c + d) media <-- (a + b + c + d) / 4 escribir (producto, suma, media) fin El pseudocódigo es una mezcla entre un lenguaje de programación y el español, al utilizar pseudocódigo podemos diseñar un programa que podrá ser traspasado a código fuente con gran facilidad. El pseudocódigo es una representación narrativa de los pasos que debe seguir un algoritmo para llegar a la solución del problema, su similitud con el código fuente de un lenguaje de alto nivel hace que esta técnica para la formulación de algoritmos sea una de las más utilizadas. Ventajas de utilizar un Pseudocódigo a un Diagrama de Flujo Ocupa menos espacio en una hoja de papel Pág. Nro. 1

Permite representar en forma fácil operaciones repetitivas complejas Es muy fácil traspasar de pseudocódigo a un programa en algún lenguaje de programación. Si se siguen las reglas se puede observar claramente los niveles que tiene cada operación. Se adquiere un nivel de lógica similar al necesario para programar en los lenguajes de Alto Nivel. PALABRA ABRE CASO CIERRA ENTONCES ESCRIBE FIN HASTA HAZ INICIO LEER MIENTRAS NO O O - BIEN PARA SI USUAL Y UTILIZACIÓN Abre un archivo Selección entre múltiples alternativas Cierra un archivo Complemento de la selección SI - ENTONCES Visualiza un dato en pantalla Finaliza un bloque de instrucciones Cierra la iteración HAZ - HASTA Inicia la iteración HAZ - HASTA Inicia un bloque de instrucciones Leer un dato del teclado Inicia la iteración mientras Niega la condición que le sigue Disyunción lógica Complemento opcional de la selección SI - ENTONCES Inicia un número fijo de iteraciones Inicia la selección SI-ENTONCES Opcional en la instrucción CASO Conjunción lógica { Inicio de comentario } Fin de comentario <= Asignación Diagramas de Flujo. Son la representación gráfica de la solución algorítmica de un problema. Para diseñarlos se utilizan determinados símbolos o figuras que representan una acción dentro del procedimiento. Utilizan unos símbolos normalizados, con los pasos del algoritmo escritos en el símbolo adecuado y los símbolos unidos con flechas, denominadas líneas de flujo, que indican el orden en que los pasos deben ser ejecutados. Para su elaboración se siguen ciertas reglas: Pág. Nro. 2

Se escribe de arriba hacia abajo y de izquierda a derecha Siempre se usan flechas verticales u horizontales, jamás curvas Evitar cruce de flujo En cada paso expresar una acción concreta Secuencia de flujo normal en una solución de problema Tiene un inicio Una lectura o entrada de datos El proceso de datos Una salida de información Un final Simbología para diseñar flujogramas p fluxogramas. VENTAJAS DE USAR FLUJOGRAMAS Rápida comprensión de las relaciones Análisis efectivo de las diferentes secciones del programa Pueden usarse como modelos de trabajo en el diseño de nuevos programas o sistemas Comunicación con el usuario Documentación adecuada de los programas Codificación eficaz de los programas Depuración y pruebas ordenadas de programas DESVENTAJAS DE LOS FLUJOGRAMAS Diagramas complejos y detallados suelen ser laboriosos en su planteamiento y diseño Acciones a seguir tras la salida de un símbolo de decisión, pueden ser difíciles de seguir si existen diferentes caminos No existen normas fijas para la elaboración de los diagramas de flujo que permitan incluir todos los detalles que el usuario desee introducir. Pág. Nro. 3

Representando el ejemplo como flujograma tenemos: Pág. Nro. 4

Pág. Nro. 5

Pág. Nro. 6

Pág. Nro. 7

Pág. Nro. 8

Representación en Diagrama Nassi Schneiderman: Los problemas secuenciales en diagramas N-S se representan solamente por cajas con líneas horizontales En este ejercicio no existen datos de entrada ya que para calcular el área y la longitud necesitamos únicamente el radio y el valor de Pi los cuales ya son dados en el problema Modificar el problema anterior para que sea capaz de calcular el área y la longitud de un círculo de cualquier radio requerido. Solución. El problema es el mismo con la variante de que ahora ya existe un dato de entrada, puesto que el radio puede ser cualquiera y será necesario que el usuario sea quien lo introduzca de teclado. Usando las misma definición de variables tenemos: Algoritmo: Inicio Pi = 3.1416 (fase de inicialización) Leer (R) (fase de lectura) Area = pi * R ^ ² (fase de cálculos) L= 2 * pi * R Escribir ( A, L ) (fase de salida) Fin Pág. Nro. 9

OBSERVACIÓN: Nótese que la lectura o ingreso de cualquier valor a una variable, a través del teclado u otro dispositivo, tiene el agregado de una línea oblicua en el ángulo superior izquierdo del rectángulo. Esto señala gráficamente una entrada o lectura. Además, utilizamos la orden Leer o Entrada o Ingreso. También en el caso de la Salida, Mostrar o Escribir, se le adiciona una línea oblicua pero en este caso en el ángulo inferior derecho. La instrucción de asignación fue cambiada por la instrucción leer. En el flujograma deberán cambiarse también los símbolos que los representan: FORMAS BÁSICAS DEL DIAGRAMA DE NASSI SCHNEIDERMAN O DE CHAPIN Pág. Nro. 10

Pág. Nro. 11

ESTRUCTURAS BÀSICAS DE PROGRAMACIÓN Un problema se puede dividir en acciones elementales o instrucciones, usando un número limitado de estructuras de control (básicas) y sus combinaciones que pueden servir para resolver dicho problema. Las Estructuras Básicas pueden ser: Secuenciales: cuando una instrucción del programa sigue a otra. Selección o decisión: acciones en las que la ejecución de alguna dependerá de que se cumplan una o varias condiciones. Repetición, Iteración: cuando un proceso se repite en tanto cierta condición sea establecida para finalizar ese proceso. ESTRUCTURAS BÁSICAS. Tipos de Instrucciones: Las operaciones se pueden dividir en grupos según sus tipos. Así tendremos 3 grupos. 1.Operaciones secuenciales 2. Operaciones de control 3. Operaciones de iteración. Estructura Secuencial. Se caracteriza porque una acción se ejecuta detrás de otra. El flujo del programa coincide con el orden físico en el que se han ido poniendo las instrucciones. Dentro de este tipo podemos encontrar operaciones de inicio/fin, inicialización de variables, operaciones de asignación, cálculo, sumarización, etc. Este tipo de estructura se basa en las 5 fases de que consta todo algoritmo o programa: a) Instrucciones de inicio/fin (ejemplo inicio - fin) b) Instrucciones de asignación o de cálculo (ejemplo B = 7) c) Instrucciones de lectura (entrada) ejemplo leer d) Instrucciones de escritura (salir) ejemplo escribir e) Instrucciones de bifurcación ejemplo Goto fin Pág. Nro. 12

Ejemplo 1. Se desea encontrar la longitud y el área de un círculo de radio 5. Solución. El objetivo del ejercicio es encontrar la longitud y el área de un círculo con un radio conocido y de valor 5. Las salidas serán entonces la longitud y el área. (Fase 5 del algoritmo) Sabemos que la longitud de un círculo viene dada por la fórmula 2 * pi * radio y que el área viene dada por pi * radio al cuadrado. (Fase 4 del algoritmo) Si definimos las variables como: (fase 1 del algoritmo) L = Longitud, A = área, R = radio, pi = 3.1416. Hagamos el algoritmo: Inicio Pi = 3.1416 (definición de un valor constante) R = 5 (radio constante ya que es conocido su valor) A = pi * R ^ ² (asignación del valor del área) L = 2 * pi * R (asignación del valor de la longitud) Escribir (A, L) (salida del algoritmo) Fin Representación en Diagrama de Flujo para el ejemplo: 1. ACTIVIDAD EJERCICIO Leer el sueldo de tres empleados y aplicarles un aumento del 10, 12 y 15% respectivamente. Desplegar o mostrar el resultado. Salidas: Sueldos finales Entradas: Salarios de los empleados Datos adicionales: aumentos del 10, 12 y 15% Cálculos: Sueldo final = sueldo inicial + aumento Aumento = sueldo inicial * porcentaje/100 Definición de variables: Sf1, Sf2, Sf3 = los sueldos finales - S1, S2, S3 = salarios de los empleados - Aum1, Aum2, Aum3 = aumentos HACER EL ALGORITMO Pág. Nro. 13