Estructuras de control

Documentos relacionados
Estructuras de Control

Esquemas repetitivos en Fortran 90. Esquemas repetitivos en Fortran 90. Esquemas repetitivos en Fortran 90. Tipos de Esquema

ESTRUCTURAS DE CONTROL

Esquemas repetitivos en Fortran 90

Programación Estructurada

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

Tema 3. Estructuras de control

ESTRUCTURA SECUENCIAL ESTRUCTURA SELECTIVA

INSTITUTO TECNOLÓGICO

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

UNIDAD ACADÉMICA PROFESIONAL TIANGUISTENCO

Programación. Test Autoevaluación Tema 4

TEMA 4. ESTRUCTURAS DE CONTROL

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

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

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

Programación: Estructuras de Control

TEMA 4: Programación estructurada

ESTRUCTURAS REPETITIVAS EN PHP

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

Centro Asociado Palma de Mallorca. Antonio Rivero Cuesta

La resolución de problemas es una tarea únicamente humana comprobable en todos los casos con los mismos resultados.

FUNDAMENTOS PARA LA CONSTRUCCIÓN DEL CÓDIGO A PARTIR DEL ALGORITMO

Estructuras de Control 3

Sentencias de Procesamiento Iterativo: while y do-while

Palabras reservadas de C++ y C. Una palabra reservada no puede declararse como un identificador, esto haría un conflicto entre conectores y funciones.

Fundamentos de Informática

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

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

Sentencias iterativas

Capítulo 12 INSTRUCCIONES DE CONTROL ALTERNATIVAS. Presentación resumen del libro: "EMPEZAR DE CERO A PROGRAMAR EN lenguaje C"

ESTRUCTURAS DE CONTROL

5. Sentencias selectivas o condicionales

Tema 06: Estructuras y sentencias de control en C

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

Lógica de programación

Operadores. Java es un lenguaje rico en operadores, que son casi idénticos a los de C/C++.

Conocer los tipos de esquemas condicionales. Entender su funcionamiento y sus diferencias. 1. Introducción. 3. Esquemas condicionales en C

Laboratorio de Arquitectura de Redes. Sentencias de control en lenguaje C

Estructuras Repetitivas

Dobles: Es el caso de la instrucción if-else (punto 1.2).

1. Detalle de los Comandos:

Informática Ingeniería en Electrónica y Automática Industrial

3.2. Programación estructurada. Principal. Modulo 1 Modulo 2 Modulo 3 Modulo 4. Modulo Modulo Modulo 3 1 Modulo 4 1 Modulo 4 2. Pág.

Introducción a la Algorítmica Transparencias correspondientes a las clases impartidas por los profesores: Lourdes Miró Amarante Ignacio García Vargas

INFORMATICA TECNICATURA DE NIVEL SUPERIOR ALGUNOS EJERCICIOS DE SELECCIÓN E ITERACION

1. PRINCIPIOS BÁSICOS DE PROGRAMACIÓN

Lección 3 Sentencias de control

Programación Estructurada

Centro Universitario UAEM Zumpango! Ingeniería en Computación! Programación estructurada

Lenguaje de Programación: C++ Estructuras de control:switch

Capítulo 4. Control de flujo. Continuar

CLASIFICACION DE LAS ESTRUCTURAS DE CONTROL

Estructuras repetitivas o de ciclo

Tema 3. Estructuras de Datos

Objetivos de la práctica: - Trabajar las estructuras de control repetitivas en la realización de programas.

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

TEMA 5. ESTRUCTURAS DE CONTROL: BUCLES.

1.9. SENTENCIAS DE CONTROL DE PROGRAMA

TEMA 5. CONTROL DE FLUJO DEL PROGRAMA. Sentencia Instrucción Expresión Operadores + Operandos Sintaxis: Sentencia ;

Algoritmo, Estructuras y Programación I Ing. Marglorie Colina

PYTHON. Programación estructurada

Fundamentos de programación

Estructura repetitiva while

Capítulo 13 INSTRUCCIONES DE CONTROL REPETITIVAS. Presentación resumen del libro: "EMPEZAR DE CERO A PROGRAMAR EN lenguaje C"

GUÍA DE LABORATORIO #3 ESTRUCTURAS ALGORÍTMICAS CONDICIONALES SIMPLES, DOBLES Y MÚLTIPLES

Estructuras de Control Selección o Decisión

Conceptos Programa Programa objeto Pseudocódigo Algoritmos y Diagramas de flujo 1) Finitud 2) Definición 3) Entrada

Lógica de programación 1

Laboratorio 3 Tema 5. Estructuras Iterativas

Variables lógicas y sentencia IF. Seminario de Computación Verano de 2009

Conceptos. Generales ALGORITMOS

TEMA 4: Estructuras de Control

Prof. María Alejandra Quintero. Informática Año

Guía práctica de estudio 06: Estructuras de repetición

FACULTAD DE INGENIERIA

Lógica de programación

fundamentos de programación (unidad 4) programación estructurada en Java

Tema 4. Control de flujo. Programación Programación - Tema 4: Control de Flujo

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

LENGUAJE FORTRAN. ESTRUCTURAS Y SENTENCIAS

Introducción a la Informática Estructuras de control. Secuencial y selectiva

TEMA 5. PROGRAMACIÓN BÁSICA EN MATLAB /OCTAVE

Diseño Estructurado de Algoritmos

Programación en Lenguaje C

Estructuras de Control (y su forma en Python y en C) Clase 5 Introducción a la Computación Patricia Borensztejn

Sentencias de control de flujo

El Pseudo-código de PsInt

Transcripción:

Estructuras de control Introducción Los algoritmos vistos hasta el momento han consistido en simples secuencias de instrucciones; sin embargo, existen tareas más complejas que no pueden ser resueltas empleando un esquema tan sencillo, en ocasiones es necesario repetir una misma un número determinado de veces o evaluar una expresión y realizar diferentes en base al resultado de dicha evaluación. Para resolver estas situaciones existen las denominadas estructuras de control que poseen las siguientes características: Una estructura de control tiene un único punto de entrada y un único punto de salida. Una estructura de control se compone de sentencias o de otras estructuras de control. Tales características permiten desarrollar de forma muy flexible todo tipo de algoritmos aún cuando sólo existen tres tipos fundamentales de estructuras de control: Secuencial. Alternativa. Repetitiva. A lo largo de esta lección se presentarán las distintas estructuras de control, la forma de representarlas en la notación algorítmica y las correspondientes sentencias FORTRAN para poder utilizarlas en nuestros programas. Estructura secuencial La estructura secuencial es la más sencilla de todas, simplemente indica al procesador que debe ejecutar de forma consecutiva una lista de (que pueden ser, a su vez, otras estructuras de control); para construir una secuencia de basta con escribir cada en una linea diferente. A continuación se muestra una composición secuencial de en notación algorítmica y su equivalente FORTRAN. leer a leer b c! a + b escribir c read *, a read *, b c = a + b print *, c Existe una forma alternativa de expresar una estructura secuencial escribiendo varias en la misma línea pero utilizando el punto y coma, ;, como separador. Sin embargo, esta última notación es desaconsejable puesto que puede llegar a hacer el código bastante difícil de leer. 1 2 n leer a; leer b c! a + b; escribir c read *, a; read *, b c = a + b; print *, c Por último, es necesario señalar un aspecto importante de la composición secuencial y es que no es conmutativa. Estructura alternativa La estructura alternativa permite bifurcar el flujo del programa en función de una expresión ; disponemos de tres estructuras alternativas diferentes: alternativa simple, alternativa doble y alternativa múltiple. Estructura alternativa simple Esta estructura permite evaluar una expresión y en función de dicha evaluación ejecutar una (o composición de ) o no ejecutarla; también se la suele denominar SI-ENTONCES. A continuación se muestra la notación algorítmica y FORTRAN para la estructura alternativa simple. si expresión entonces if (expresión ) then 1

En el siguiente ejemplo se calcula la longitud de una circunferencia si el radio es positivo no nulo: si radio>0 entonces longitud! 2 pi radio if (radio>0) then longitud = 2*pi*radio Estructura alternativa doble La estructura alternativa doble es similar a la anterior con la salvedad de que en este tipo de estructura se indican no sólo para la rama verdadera sino también para la falsa ; es decir, en caso de la expresión evaluada sea cierta se ejecutan una o grupo de y en cado de que sea falsa se ejecuta un grupo diferente. La sintáxis en la notación algorítmica y en FORTRAN son las que se muestran a continuación: si expresión entonces si no if (expresión ) then else En el siguiente ejemplo se calcula la longitud de una circunferencia si el radio es positivo no nulo y, en caso contrario, se proporciona un mensaje de error: 2

si radio>0 entonces longitud! 2 pi radio si no escribir Radio incorrecto if (radio>0) then longitud = 2*pi*radio else print *, Radio incorrecto Estructura multialternativa Esta estructura evalúa una expresión que pueda tomar n valores (enteros, caracteres y lógicos pero nunca reales) y ejecuta una o grupo de diferente en función del valor tomado por la expresión selectora. La sintaxis de esta estructura es la siguiente: segun expresión caso valor1: 1 caso valor2: 2 caso valorn: n otro caso: fin según select case (expresión) case (valor1) 1 case (valor2) 2 case (valorn) n case default end select selectora Valor 1 Valor 2 Valor N Resto valores 1 2 N En el siguiente ejemplo se proporciona como salida el número de días de un mes dado: segun mes caso 1,3,5,7,8,10,12: escribir 31 caso 4,6,9,11: escribir 30 caso 2: escribir 28 otro caso: escribir Mes incorrecto fin según select case (mes) case (1,3,5,7,8,10,12) print *, 31 case (4,6,9,11) print *, 30 case (2) print *, 28 case default print *, Mes incorrecto end select Obsérvese que es posible que un caso conste de múltiples valores. 3

Estructura repetitiva La estructura repetitiva o iterativa permite, como su propio nombre indica, repetir una (o grupo de ); dicha repetición puede llevarse a cabo un número prefijado de veces o depender de la evaluación de una expresión. Existen tres tipos de estructuras repetitivas: desde-hasta, mientras y repetir-hasta. Estructura desde-hasta Esta estructura permite repetir la ejecución de una o de un grupo de un número determinado de veces; la sintáxis es la siguiente: desde indice!inicio hasta fin [con paso valor] hacer do indice=inicio, fin, paso El funcionamiento de la estructura es el siguiente: En primer lugar, se asigna a la variable indice el valor de inicio. El bucle se ejecuta mientras indice no alcance el valor de fin. En cada iteración el valor de indice es incrementado según el paso indicado y se ejecuta la o grupo de encerrados en el bucle. En caso de que no se indique ningún paso el que se empleará sera +1. A continuación se muestran algunos ejemplos: desde n!1 hasta 10 hacer escribir n do n=1, 10 print *, n El bucle anterior imprime por pantalla los números del 1 al 10. desde n!10 hasta 1 hacer escribir n do n=10, 1 print *, n El bucle anterior no se ejecuta nunca puesto que no se puede alcanzar 1 comenzando en 10 y avanzando con paso +1; atención! Un error frecuente es pensar que el bucle se ejecuta de forma infinita. desde n!10 hasta 1 con paso 2 hacer escribir n do n=10, 1, -2 print *, n Este bucle escribe los números pares de 10 a 2 en orden inverso. Estructura mientras Esta estructura repite una o grupo de mientras una expresión sea cierta; la sintáxis en la notación algorítmica y en FORTRAN es la siguiente: mientras expresión hacer do while (expresión ) Un aspecto muy importante de la presente estructura de control es que si la expresión es inicialmente falsa el bucle no se ejecuta ni una sola vez; es decir, la estructura mientras supone que el bucle iterará 0 ó más veces. A continuación se muestra un ejemplo que solicita al usuario el radio de una circunferencia mientras el radio introducido sea incorrecto: mientras radio<0 hacer escribir Radio? leer radio do while (radio<0) print *, Radio? read *, radio 4

Estructura repetir-hasta Esta estructura repite una o grupo de hasta que una expresión sea cierta; la sintáxis en la notación algorítmica es la siguiente (no existe equivalente en FORTRAN pero sí en otros lenguajes de programación): repetir hasta expresión Un aspecto muy importante de la presente estructura de control es que la expresión no se evalúa hasta el final con lo cual el bucle se ejecuta al menos una vez por contraposición a la estructura anterior que podía no ejecutarse ninguna. Resumen 1. Las estructuras de control permiten alterar el flujo secuencial de los algoritmos que hemos visto hasta el momento. 2. Una estructura de control: Tiene un único punto de entrada y un único punto de salida. Se compone de sentencias o de otras estructuras de control. 3. Existen tres tipos fundamentales de estructuras de control: Secuencial. Alternativa. Repetitiva. 4. La estructura secuencial es una lista consecutiva de donde el orden de aparición indica el orden de ejecución. 5. La estructura alternativa se presenta en tres formas: Simple. Doble. Multialternativa. 6. La estructura alternativa simple permite evaluar una expresión y ejecutar una si dicha expresión es cierta. 7. La estructura alternativa doble permite evaluar una expresión y ejecutar una si dicha expresión es cierta y otra si dicha expresión es falsa. 8. La estructura multialternativa consiste en una expresión selectora que puede tomar n valores diferentes y ejecuta una diferente por cada posible valor de la expresión selectora. 5

9. La estructura repetitiva se presenta en tres formas: Estructura desde-hasta Estructura mientras Estructura repetir-hasta 10. La estructura desde-hasta permite repetir la ejecución de una un número determinado de veces. 11. La estructura mientras repite una mientras una expresión sea cierta; esta estructura puede ejecutarse 0 ó más veces. 12. La estructura repetir-hasta repite una hasta que una expresión sea cierta; esta estructura siempres se ejecuta 1 vez al menos y no existe en el lenguaje FORTRAN aunque aparece en otros lenguajes de programación. 1 2 n Estructura secuencial Estructura alternativa simple Estructura alternativa doble Valor 1 selectora Valor 2 Valor N Resto valores 1 2 N Estructura alternativa múltiple Estructura mientras Estructura repetir-hasta 6