DIAGRAMA ESTRUCTURADO (N-S) DEFINICIÓN: Es una representación gráfica que muestra el diseño de un programa estructurado. Fue desarrollado en 1972 por Isaac Nassi y Ben Shneiderman. Este diagrama es también conocido como Diagrama de Chapin, es una técnica de especificación de algoritmos que combina la descripción textual, propia del pseudocódigo, con la representación gráfica del diagrama de flujo. Cuenta con un conjunto limitado de símbolos para representar los pasos del algoritmo, por ello se apoya en expresiones del lenguaje natural; sin embargo, dado que el lenguaje natural es muy extenso y se presta para la ambigüedad, solo se utiliza un conjunto de palabras, a las que se denomina palabras reservadas. Las palabras reservadas más utilizadas son: – Inicio, Fin, Leer, Escribir. – Mientras, Repita, Hasta, Para. – Incrementar, Hacer, Función. – Entero, Real, Caracter, Cadena. – Lógico, Retornar. EJEMPLO: Definición del problema Calcular área y perímetro de un rectángulo Diseño de la solución Inicio Entero: b, h, a, p Leer b, h funciones deben estar especificadas bajo el recuadro que contiene la palabra Inicio. en el recuadro siguiente debe ir la palabra Inicio. La última instrucción de un Diagrama NS debe ser el recuadro Fin. Todas las declaraciones de variables.a=b*h p = 2 (b + h) Escribir "área": a Escribir "perímetro": p Fin algoritmo CARACTERÍSTICAS: En la primera caja debe ir el nombre o título del algoritmo. a excepción de la utilización de funciones. SIMBOLOGÍA: . Las estructuras de selección y cíclicas deben estar lo más clara posible El diseño debe caer en una hoja. las cuales pueden estar en otra hoja. debido a que se consideran un algoritmo diferente. 1. Estructura de Decisión Múltiple DE DECISIÓN: C L A SI FI C A CI Ó N: E S T R U C T U R A S . Indica la entrada de información Indica la salida de información Indica un proceso. Simbología utilizada en Técnica Nassi-Schneiderman Símbolo Descripción Título del Algoritmo Indica el inicio de un algoritmo. Estructura de Decisión. Declaración de Variables. Indica el Fin de un algoritmo. una ejecución de una línea de código. que puede ser una asignación. Las estructuras de decisión o también llamadas de selección permiten que el algoritmo tome decisiones y ejecute u omita algunos procesos dependiendo del cumplimiento de una condición. 1. doble y múltiple. Ejemplo 1 Se desea un algoritmo para obtener el valor absoluto de un número Definición del problema Encontrar el valor absoluto de un número Análisis del problema Para encontrar el valor absoluto del número es necesario recordar que para los enteros positivos el valor es el mismo. Decisión simple y doble Una decisión es simple. cuando solo se tiene determinado los pasos a seguir si el resultado de la condición es verdadero. Una decisión cuando se tiene un curso de acción para el caso que el resultado de la comparación sea verdadero y otro para cuando sea falso. Datos de entrada: número Datos de salida: valor absoluto Proceso: número = número * (-1) Diseño de la solución Ejemplo 2 Dados dos números ¿cuál es mayor? y ¿cuál es menor? Definición del problema Identificar el mayor y menor de dos números .1. Se pueden manejar tres tipos de decisiones: simple. mientras que para los enteros negativos es necesario cambiarlos de signo. la ejecución del algoritmo continúa después de la estructura condicional. mientras que si es falso. En diagrama N-S la estructura de selección múltiple tiene la forma: Ejemplo: . Es importante tener en cuenta que solo se verifica la condición de igualdad entre la variable y la constante. es mejor utilizar una estructura de decisión múltiple. ya que éstos incluyen alguna instrucción con este fin. Decisión múltiple Muchas decisiones deben tomarse. La decisión múltiple determina el valor de una variable y dependiendo de éste sigue un curso de acción.Análisis del problema Datos de entrada: num1. sin embargo. Estos casos bien pueden solucionarse utilizando condicionales dobles anidados. no solo entre dos alternativas. en favor de la claridad del algoritmo y la facilidad para el programador. num2 Datos salida: mayor.2. menor Proceso: comparación Diseño de la solución 1. la cual es fácil de llevar a un lenguaje de programación. sino de un conjunto mayor. el número de repeticiones se conoce con anterioridad. valor Datos de salida: descuento. las de marca Yamaha del 8% y las Suzuki el 10%. las de otras marcas el 2% Definición del problema Calcular el valor del descuento y el valor a pagar por la motocicleta. mientras que en otras depende de cálculos o estados de variables que se dan dentro de la solución del problema. En algunos casos. Las motos marca HONDA tienen un descuento del 5%.descuento Diseño de la solución 2. valor a pagar Proceso: descuento = valor * porcentaje Valor neto = valor . Para solucionar este tipo de problemas se utiliza un tipo de estructuras a las que se conocen como estructuras de repetición. Análisis del problema Porcentaje descuento = 5% para motos Honda Porcentaje descuento = 8% para motos Yamaha Porcentaje descuento = 10% para motos Suzuki Porcentaje descuento = 2% para motos otras marcas Datos de entrada: marca. . bucles o ciclos.Una distribuidora de motocicletas tiene una promoción de fin de año que consiste en los siguiente. ESTRUCTURAS DE REPETICIÓN: En la solución de algunos problemas es necesario ejecutar repetidas veces una instrucción o un conjunto de instrucciones. Un ciclo consiste en un grupo de acciones que se ejecutan repetidas veces dependiendo del cumplimiento de una condición. .