Logo Studenta

Edsgar Dijkstra afirmó hace aproximadamente cuatro décadas que cualquier problema a modelar mediante computadora, se podía resolver en base a tres ...

Edsgar Dijkstra afirmó hace aproximadamente cuatro décadas que cualquier problema a modelar mediante computadora, se podía resolver en base a tres estructuras lógicas fundamentales: secuencia, decisión y ciclo. La estructura secuencia implica linealidad y adyacencia instructiva; la decisión implica la ejecución de ciertas instrucciones de acuerdo al valor de verdad de una expresión lógica; la estructura ciclo indica repetitividad finita de un grupo de instrucciones. A partir de los postulados de Dijkstra, Nassi y Shneiderman idean una simbología clara y visual, basada en rectángulos por eso también se conoce como diagramación rectangular, que se esboza a continuación. 1. Estructura secuencia S Donde S: secuencia de instrucciones. Las instrucciones pueden ser de entrada, salida, asignación, decisión o ciclo. 2. Estructura de decisión Se diferencian dos tipos: 2.1. Selector dual (if) E Si No S1 S2 Donde E: Expresión lógica o condición S1: Estructura secuencia S2: Estructura secuencia Funcionamiento: Si la expresión E es verdadera se ejecuta la secuencia S1, de lo contrario se ejecuta la secuencia S2. Recomendación: S1 nunca debe coincidir con la secuencia nula, pero S2 sí. 2.2. Selector múltiple (switch) VS C1 C2 ... Cn sino S1 S2 ... Sn SX Donde VS: Variable selectora. Puede ser de tipo entero, carácter, enumerado o subrango. Ci: Lista de constantes i i ∈ [i, n ] Toda Ci debe coincidir con el tipo de VS S: Estructura secuencia J J ∈ [i,n] U [X] Funcionamiento: Si la variable VS coincide con la lista de constantes Ci se ejecuta la secuencia Si; de lo contrario pasa a efectuarse la secuencia SX, de existir, pues es de carácter opcional. 3. Estructura ciclo Se presentan dos tipos: 3.1. Ciclos MIENTRAS y PARA Mientras (E) Para (Ini; E; Incr) S S donde: S: Estructura secuencia E: Expresión lógica (verdadera o falsa) Ini: Inicialización de una o más variables Incr: Incremento (positivo o negativo) de las variables asociadas a Ini. Funcionamiento ciclo MIENTRAS. Si la expresión E es verdadera, se ejecuta reiteradamente la secuencia S; en caso contrario el control pasa a la siguiente instrucción después del MIENTRAS. Dentro de S debe existir al menos una instrucción que modifique a la expresión E para evitar bucle infinito. Funcionamiento bucle PARA. Se ejecuta la asignación Ini (puede ser múltiple) y se evalúa la expresión E; si ésta posee el valor verdad verdadero se ejecuta el cuerpo del ciclo (secuencia S) y se procede a ejecutar el incremento Incr. El proceso se repite hasta que la expresión E se hace falsa, lo cual ocasiona interrupción del ciclo. 3.2. Ciclo HACER / MIENTRAS S S: Estructura secuencia E: Expresión booleana Mientras (E) FUNCIONAMIENTO DEL CICLO HACER / MIENTRAS Funciona exactamente igual al bucle MIENTRAS, solo que la expresión E se evalúa en distinto punto. Se concluye entonces que el cuerpo de un ciclo MIENTRAS se ejecuta cero o más veces, pero el del ciclo HACER / MIENTRAS siempre se ha de repetir al menos una vez. Nota. Los diagramas N-S son claros y visuales (implican bloques rectangulares que globalmente son absorbidos por la estructura secuencia). Veamos el siguiente ejemplo que visualiza los datos de un conjunto de empleados con salario superior a $1.000.000. La configuración del nodo (donde se almacenan datos ficticios para un empleado) es la siguiente: nodo codEmpleado Salario Liga donde liga constituye la dirección de memoria para almacenar los datos del siguiente empleado; los demás datos no deben requerir explicación. ListarEmpleados (cab) p = cab Mientras (p != null) P → salario > 1.000.000 Si No Imprimir p → codEmpleado, p → salario p = p → liga Retorne Los diagramas N-S son simples, visuales y de gran utilidad para expresar la algoritmia de un problema.

Esta pregunta también está en el material:

Metodologia para Desenvolvimento de Algoritmos
264 pag.

Análise Orientada A Objetos Universidad Nacional De ColombiaUniversidad Nacional De Colombia

Todavía no tenemos respuestas

¿Sabes cómo responder a esa pregunta?

¡Crea una cuenta y ayuda a otros compartiendo tus conocimientos!


✏️ Responder

FlechasNegritoItálicoSubrayadaTachadoCitaCódigoLista numeradaLista con viñetasSuscritoSobreDisminuir la sangríaAumentar la sangríaColor de fuenteColor de fondoAlineaciónLimpiarInsertar el linkImagenFórmula

Para escribir su respuesta aquí, Ingresar o Crear una cuenta

User badge image

Otros materiales