INTRODUCCIÓN A LA PROGRAMACIÓN 3º P.B.yS. · PDF filede instrucciones reales para las computadoras. ... • Permite representar en forma fácil operaciones repetitivas complejas

Embed Size (px)

Citation preview

  • INTRODUCCIN A LA PROGRAMACIN3 P.B.yS. INFORMTICA

    Complejo Educativo N 394 Dr. F. de Gurruchaga Docente Barrenechea, Mara Eugenia

    PRESENTACIN DEL ALGORITMOPuede ser en distintas formas, analizaremos cuatro:

    a) Descripcin Narradab) Pseudocdigoc) Diagramas de Flujod) Diagramas N- S (Nassi-Schneiderman o de Chapin)

    Descripcin Narrada

    Este algoritmo es caracterizado porque sigue un proceso de ejecucin comn y lgico, 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. Baarse 3. Vestirse 4. Desayunar 5. Cepillarse los dientes 6. Salir de casa 7. Tomar el autobs 8. Llegar al ITCA 9. Buscar el aula 10. Ubicarse en un asiento

    Descripcin en Pseudocdigo

    Pseudo = falso. El pseudo cdigo no es realmente un cdigo sino una imitacin y una versin abreviada de instrucciones reales para las computadoras. Es una tcnica para diseo de programas que permite definir las estructuras de datos, las operaciones que se aplicarn a los datos y la lgica 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 programacin. Se concibi para superar las dos principales desventajas de los flujogramas: lento de crear y difcil de modificar sin un nuevo redibujo.

    Ejemplo 1Disear un algoritmo que lea cuatro variables y calcule e imprima su producto, suma y media aritmtica.

    inicioleer (a, b, c, d)producto

  • INTRODUCCIN A LA PROGRAMACIN3 P.B.yS. INFORMTICA

    Complejo Educativo N 394 Dr. F. de Gurruchaga Docente Barrenechea, Mara Eugenia

    Permite representar en forma fcil operaciones repetitivas complejas Es muy fcil traspasar 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. Se adquiere un nivel de lgica similar al necesario para programar en los lenguajes de Alto Nivel.

    PALABRA UTILIZACIN

    ABRE Abre un archivo

    CASO Seleccin entre mltiples alternativas

    CIERRA Cierra un archivo

    ENTONCES Complemento de la seleccin SI - ENTONCES

    ESCRIBE Visualiza un dato en pantalla

    FIN Finaliza un bloque de instrucciones

    HASTA Cierra la iteracin HAZ - HASTA

    HAZ Inicia la iteracin HAZ - HASTA

    INICIO Inicia un bloque de instrucciones

    LEER Leer un dato del teclado

    MIENTRAS Inicia la iteracin mientras

    NO Niega la condicin que le sigue

    O Disyuncin lgica

    O - BIEN Complemento opcional de la seleccinSI - ENTONCES

    PARA Inicia un nmero fijo de iteraciones

    SI Inicia la seleccin SI-ENTONCES

    USUAL Opcional en la instruccin CASO

    Y Conjuncin lgica

    { Inicio de comentario

    } Fin de comentario

  • INTRODUCCIN A LA PROGRAMACIN3 P.B.yS. INFORMTICA

    Complejo Educativo N 394 Dr. F. de Gurruchaga Docente Barrenechea, Mara Eugenia

    Se escribe de arriba hacia abajo y de izquierda a derecha Siempre se usan flechas verticales u horizontales, jams curvas Evitar cruce de flujo En cada paso expresar una accin concreta

    Secuencia de flujo normal en una solucin de problema Tiene un inicio Una lectura o entrada de datos El proceso de datos Una salida de informacin Un final

    Simbologa para disear flujogramas p fluxogramas.

    VENTAJAS DE USAR FLUJOGRAMAS Rpida comprensin de las relaciones Anlisis efectivo de las diferentes secciones del programa Pueden usarse como modelos de trabajo en el diseo de

    nuevos programas o sistemas Comunicacin con el usuario Documentacin adecuada de los programas Codificacin eficaz de los programas Depuracin y pruebas ordenadas de programas

    DESVENTAJAS DE LOS FLUJOGRAMAS

    Diagramas complejos y detallados suelen ser laboriosos en su planteamiento y diseo

    Acciones a seguir tras la salida de un smbolo de decisin, pueden ser difciles de seguir si existen diferentes caminos

    No existen normas fijas para la elaboracin de los diagramas de flujo que permitan incluir todos los detalles que el usuario desee introducir.

    Pg. Nro. 3

  • INTRODUCCIN A LA PROGRAMACIN3 P.B.yS. INFORMTICA

    Complejo Educativo N 394 Dr. F. de Gurruchaga Docente Barrenechea, Mara Eugenia

    Representando el ejemplo como flujograma tenemos:

    Pg. Nro. 4

  • INTRODUCCIN A LA PROGRAMACIN3 P.B.yS. INFORMTICA

    Complejo Educativo N 394 Dr. F. de Gurruchaga Docente Barrenechea, Mara Eugenia

    Pg. Nro. 5

  • INTRODUCCIN A LA PROGRAMACIN3 P.B.yS. INFORMTICA

    Complejo Educativo N 394 Dr. F. de Gurruchaga Docente Barrenechea, Mara Eugenia

    Pg. Nro. 6

  • INTRODUCCIN A LA PROGRAMACIN3 P.B.yS. INFORMTICA

    Complejo Educativo N 394 Dr. F. de Gurruchaga Docente Barrenechea, Mara Eugenia

    Pg. Nro. 7

  • INTRODUCCIN A LA PROGRAMACIN3 P.B.yS. INFORMTICA

    Complejo Educativo N 394 Dr. F. de Gurruchaga Docente Barrenechea, Mara Eugenia

    Pg. Nro. 8

  • INTRODUCCIN A LA PROGRAMACIN3 P.B.yS. INFORMTICA

    Complejo Educativo N 394 Dr. F. de Gurruchaga Docente Barrenechea, Mara Eugenia

    Representacin en Diagrama Nassi Schneiderman:

    Los problemas secuenciales en diagramas N-S se representan solamente por cajas con lneas horizontalesEn 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 crculo de cualquier radio requerido.Solucin.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 definicin de variables tenemos:Algoritmo:

    InicioPi = 3.1416 (fase de inicializacin)Leer (R) (fase de lectura)Area = pi * R ^ (fase de clculos)L= 2 * pi * REscribir ( A, L ) (fase de salida)

    Fin

    Pg. Nro. 9

  • INTRODUCCIN A LA PROGRAMACIN3 P.B.yS. INFORMTICA

    Complejo Educativo N 394 Dr. F. de Gurruchaga Docente Barrenechea, Mara Eugenia

    OBSERVACIN:Ntese que la lectura o ingreso de cualquier valor a una variable, a travs del teclado u otro

    dispositivo, tiene el agregado de una lnea oblicua en el ngulo superior izquierdo del rectngulo. Esto seala grficamente una entrada o lectura. Adems, utilizamos la orden Leer o Entrada o Ingreso.

    Tambin en el caso de la Salida, Mostrar o Escribir, se le adiciona una lnea oblicua pero en este caso en el ngulo inferior derecho.

    La instruccin de asignacin fue cambiada por la instruccin leer. En el flujograma debern cambiarse tambin los smbolos que los representan:

    FORMAS BSICAS DEL DIAGRAMA DE NASSI SCHNEIDERMAN O DE CHAPIN

    Pg. Nro. 10

  • INTRODUCCIN A LA PROGRAMACIN3 P.B.yS. INFORMTICA

    Complejo Educativo N 394 Dr. F. de Gurruchaga Docente Barrenechea, Mara Eugenia

    Pg. Nro. 11

  • INTRODUCCIN A LA PROGRAMACIN3 P.B.yS. INFORMTICA

    Complejo Educativo N 394 Dr. F. de Gurruchaga Docente Barrenechea, Mara Eugenia

    ESTRUCTURAS BSICAS DE PROGRAMACIN

    Un problema se puede dividir en acciones elementales o instrucciones, usando un nmero limitado de estructuras de control (bsicas) y sus combinaciones que pueden servir para resolver dicho problema.

    Las Estructuras Bsicas pueden ser:Secuenciales: cuando una instruccin del programa sigue a otra.Seleccin o decisin: acciones en las que la ejecucin de alguna depender de que se cumplan una o varias condiciones. Repeticin, Iteracin: cuando un proceso se repite en tanto cierta condicin sea establecida para finalizar ese proceso.

    ESTRUCTURAS BSICAS.

    Tipos de Instrucciones:Las operaciones se pueden dividir en grupos segn sus tipos. As tendremos 3 grupos.

    1.Operaciones secuenciales2. Operaciones de control3. Operaciones de iteracin.

    Estructura Secuencial.

    Se caracteriza porque una accin se ejecuta detrs de otra. El flujo del programa coincide con el orden fsico en el que se han ido poniendo las instrucciones. Dentro de este tipo podemos encontrar operaciones de inicio/fin, inicializacin de variables, operaciones de asignacin, clculo, sumarizacin, 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 asignacin o de clculo (ejemplo B = 7)c) Instrucciones de lectura (entrada) ejemplo leerd) Instrucciones de escritura (salir) ejemplo escribire) Instrucciones de bifurcacin ejemplo Goto fin

    Pg. Nro. 12

  • INTRODUCCIN A LA PROGRAMACIN3 P.B.yS. INFORMTICA

    Complejo Educativo N 394 Dr. F. de Gurruchaga Docente Barrenechea, Mara Eugenia

    Ejemplo 1.

    Se desea encontrar la longitud y el rea de un crculo de radio 5.Solucin.

    El objetivo del ejercicio es encontrar la longitud y el rea de un crculo con un radio conocido y de valor 5. Las salidas sern entonces la longitud y el rea. (Fase 5 del algoritmo) Sabemos que la longitud de un crculo viene dada por la frmula 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:

    InicioPi = 3.1416 (definicin de un va