Tema 4: Estructura y Contenidos

Tema 4: Estructuras de Control Estructura y Contenidos 4.1. ESTRUCTURA SECUENCIAL. 4.2. ESTRUCTURAS DE SELECCIÓN. 4.2.1. Selección simple ( if ). 4.2.2. Selección binaria ( if ... else ). 4.2.3. Selección múltiple ( switch ). 4.2.4. Anidamientos. 4.3. ESTRUCTURAS DE REPETICIÓN O ITERATIVAS. BUCLES. 4.3.1. Estructuras no deterministas ( while, do...while ). 4.3.2. Estructuras deterministas ( for ). 4.3.3. Las sentencias break y continue. 4.3.4. Diseño de bucles: anidamientos y bucles infinitos. Fundamentos de Informática Tema 4: ETSI Industrial 1 Universidad de Málaga José Antonio Gómez Ruiz Estructuras de Control OBJETIVOS 9 Establecer la necesidad de las estructuras de control 9 Diferenciar las estructuras de selección de las iterativas 9 Estructuras de selección e iterativas en C 9 Diseño de bucles: anidamientos y bucles infinitos 9 Todo problema que se pueda resolver en un numero finito de pasos puede expresarse con el uso de estructuras secuenciales, selectivas e iterativas Fundamentos de Informática ETSI Industrial 2 Universidad de Málaga José Antonio Gómez Ruiz Tema 4: Estructuras de Control Estructura y Contenidos 4.1. ESTRUCTURA SECUENCIAL. 4.2. Estructuras de selección. 4.2.1. Selección simple ( if ). 4.2.2. Selección binaria ( if ... else ). 4.2.3. Selección múltiple ( switch ). 4.2.4. Anidamientos. 4.3. Estructuras de repetición o iterativas. Bucles. 4.3.1. Estructuras no deterministas ( while, do...while ). 4.3.2. Estructuras deterministas ( for ). 4.3.3. Las sentencias break y continue. 4.3.4. Diseño de bucles: anidamientos y bucles infinitos. Fundamentos de Informática ETSI Industrial 3 Universidad de Málaga José Antonio Gómez Ruiz ESTRUCTURA SECUENCIAL ‰ Estructura Secuencial: aquella en la que las instrucciones o sentencias son ejecutadas una a continuación de la otra en un determinado orden ‰ Se puede alterar esa secuencialidad usando estructuras o sentencias de control. Estas estructuras permiten variar el flujo de control del programa dependiendo de ciertas condiciones ¾ Estructuras de Selección: Permiten que se tomen rutas alternativas de acción dependiendo del resultado de una condición ¾ Estructuras de Iteración: (de repetición o bucle): Permiten repetir un conjunto de sentencias un número determinado de veces Fundamentos de Informática ETSI Industrial 4 Universidad de Málaga José Antonio Gómez Ruiz ESTRUCTURA SECUENCIAL Inicio Inicio V Sentencia ¿? F Selección Sentencias Sentencias Sentencia Sentencia Sentencias Fin ¿? Estructura Secuencial F Fin Iteración V Estructura no Secuencial Fundamentos de Informática ETSI Industrial 5 Universidad de Málaga José Antonio Gómez Ruiz Tema 4: Estructuras de Control Estructura y Contenidos 4.1. Estructura secuencial. 4.2. ESTRUCTURAS DE SELECCIÓN. 4.2.1. Selección simple ( if ). 4.2.2. Selección binaria ( if ... else ). 4.2.3. Selección múltiple ( switch ). 4.2.4. Anidamientos. 4.3. Estructuras de repetición o iterativas. Bucles. 4.3.1. Estructuras no deterministas ( while, do...while ). 4.3.2. Estructuras deterministas ( for ). 4.3.3. Las sentencias break y continue. 4.3.4. Diseño de bucles: anidamientos y bucles infinitos. Fundamentos de Informática ETSI Industrial 6 Universidad de Málaga José Antonio Gómez Ruiz ESTRUCTURAS DE SELECCIÓN ‰ Controlan la selección de flujos alternativos en un algoritmo ‰ Permiten seleccionar una sentencia o grupo de sentencias en función de una condición que, normalmente, es una expresión lógica ‰ Tipos de sentencias de selección: − Selección Simple → if − Selección Binaria → if ... else − Selección Múltiple → switch Fundamentos de Informática ETSI Industrial 7 Universidad de Málaga José Antonio Gómez Ruiz EXPRESIONES LÓGICAS ‰ ‰ Las expresiones lógicas son aquellas en las que aparecen exclusivamente operadores relacionales y/o lógicos (>, =, = 0 !((letra==‘Q’) || (letra==‘z’)) && (x>=6) (largo==ancho) && !(x=a && sqrt(x)>=1.0) ⇔ (bn2) { /*Estas llaves se pueden omitir*/ if (n1>n3) printf(“El máximo es ”, n1); else printf(“El máximo es ”, n3); } else { if (n2>n3) printf(“El máximo es ”, n2); else printf(“El máximo es ”, n3); } Fundamentos de Informática ETSI Industrial 18 Universidad de Málaga José Antonio Gómez Ruiz ANIDAMIENTOS Selección Múltiple SI cond_1 acción_1 NO SI cond_2 acción_2 NO cond_3 SI acción_3 M NO M Fundamentos de Informática ETSI Industrial 19 Universidad de Málaga José Antonio Gómez Ruiz ANIDAMIENTOS /*caso binario especial*/ if (cond_1) acción_1; else if (cond_2) acción_2; else if (cond_3) acción_3; ... ¡Importante la indentación! Fundamentos de Informática /* sintaxis abreviada */ if (cond_1) acción_1; else if (cond_2) acción_2; else if (cond_3) acción_3; ... if (nota=1 && mes=1 && dia max ) max = num; }while( num > 0 ); if( max!=0 ) printf(“El número más grande es %d.\n”, max); else printf(“No se han introducido números.\n”); return 0; } Fundamentos de Informática ETSI Industrial 29 Universidad de Málaga José Antonio

3 downloads 236 Views 169KB Size

Recommend Stories


Tema 4. Estructura de un ordenador elemental
Tema 4. Estructura de un ordenador elemental 4.1. Codicación interna de la información 4.2. Estructura funcional de un ordenador Arquitectura von Neum

TEMA 2: ESTRUCTURA ATÓMICA
I.E.S. Al-Ándalus. Dpto. Física-Química. F.Q. 1º Bachillerato. Tema 2. Estructura atómica. -1- TEMA 2: ESTRUCTURA ATÓMICA. 2.1 Clasificación perió

Story Transcript

Tema 4: Estructuras de Control Estructura y Contenidos 4.1. ESTRUCTURA SECUENCIAL. 4.2. ESTRUCTURAS DE SELECCIÓN. 4.2.1. Selección simple ( if ). 4.2.2. Selección binaria ( if ... else ). 4.2.3. Selección múltiple ( switch ). 4.2.4. Anidamientos. 4.3. ESTRUCTURAS DE REPETICIÓN O ITERATIVAS. BUCLES. 4.3.1. Estructuras no deterministas ( while, do...while ). 4.3.2. Estructuras deterministas ( for ). 4.3.3. Las sentencias break y continue. 4.3.4. Diseño de bucles: anidamientos y bucles infinitos.

Fundamentos de Informática

Tema 4:

ETSI Industrial 1 Universidad de Málaga

José Antonio Gómez Ruiz

Estructuras de Control OBJETIVOS

9 Establecer la necesidad de las estructuras de control 9 Diferenciar las estructuras de selección de las iterativas 9 Estructuras de selección e iterativas en C 9 Diseño de bucles: anidamientos y bucles infinitos 9 Todo problema que se pueda resolver en un numero finito de pasos puede expresarse con el uso de estructuras secuenciales, selectivas e iterativas

Fundamentos de Informática

ETSI Industrial 2 Universidad de Málaga

José Antonio Gómez Ruiz

Tema 4: Estructuras de Control Estructura y Contenidos 4.1. ESTRUCTURA SECUENCIAL. 4.2. Estructuras de selección. 4.2.1. Selección simple ( if ). 4.2.2. Selección binaria ( if ... else ). 4.2.3. Selección múltiple ( switch ). 4.2.4. Anidamientos. 4.3. Estructuras de repetición o iterativas. Bucles. 4.3.1. Estructuras no deterministas ( while, do...while ). 4.3.2. Estructuras deterministas ( for ). 4.3.3. Las sentencias break y continue. 4.3.4. Diseño de bucles: anidamientos y bucles infinitos.

Fundamentos de Informática

ETSI Industrial 3 Universidad de Málaga

José Antonio Gómez Ruiz

ESTRUCTURA SECUENCIAL ‰

Estructura Secuencial: aquella en la que las instrucciones o sentencias son ejecutadas una a continuación de la otra en un determinado orden

‰

Se puede alterar esa secuencialidad usando estructuras o sentencias de control. Estas estructuras permiten variar el flujo de control del programa dependiendo de ciertas condiciones ¾

Estructuras de Selección: Permiten que se tomen rutas alternativas de acción dependiendo del resultado de una condición

¾

Estructuras de Iteración: (de repetición o bucle): Permiten repetir un conjunto de sentencias un número determinado de veces

Fundamentos de Informática

ETSI Industrial 4 Universidad de Málaga

José Antonio Gómez Ruiz

ESTRUCTURA SECUENCIAL Inicio

Inicio V Sentencia

¿?

F

Selección Sentencias

Sentencias

Sentencia

Sentencia

Sentencias

Fin

¿?

Estructura Secuencial

F Fin

Iteración

V

Estructura no Secuencial Fundamentos de Informática

ETSI Industrial 5 Universidad de Málaga

José Antonio Gómez Ruiz

Tema 4: Estructuras de Control Estructura y Contenidos 4.1. Estructura secuencial. 4.2. ESTRUCTURAS DE SELECCIÓN. 4.2.1. Selección simple ( if ). 4.2.2. Selección binaria ( if ... else ). 4.2.3. Selección múltiple ( switch ). 4.2.4. Anidamientos. 4.3. Estructuras de repetición o iterativas. Bucles. 4.3.1. Estructuras no deterministas ( while, do...while ). 4.3.2. Estructuras deterministas ( for ). 4.3.3. Las sentencias break y continue. 4.3.4. Diseño de bucles: anidamientos y bucles infinitos.

Fundamentos de Informática

ETSI Industrial 6 Universidad de Málaga

José Antonio Gómez Ruiz

ESTRUCTURAS DE SELECCIÓN ‰

Controlan la selección de flujos alternativos en un algoritmo

‰

Permiten seleccionar una sentencia o grupo de sentencias en función de una condición que, normalmente, es una expresión lógica

‰

Tipos de sentencias de selección: − Selección Simple

→ if

− Selección Binaria

→ if ... else

− Selección Múltiple

→ switch

Fundamentos de Informática

ETSI Industrial 7 Universidad de Málaga

José Antonio Gómez Ruiz

EXPRESIONES LÓGICAS ‰

‰

Las expresiones lógicas son aquellas en las que aparecen exclusivamente operadores relacionales y/o lógicos (>, =, = 0 !((letra==‘Q’) || (letra==‘z’)) && (x>=6) (largo==ancho) && !(x=a && sqrt(x)>=1.0) ⇔ (bn2) { /*Estas llaves se pueden omitir*/ if (n1>n3) printf(“El máximo es ”, n1); else printf(“El máximo es ”, n3); } else { if (n2>n3) printf(“El máximo es ”, n2); else printf(“El máximo es ”, n3); }

Fundamentos de Informática

ETSI Industrial 18 Universidad de Málaga

José Antonio Gómez Ruiz

ANIDAMIENTOS Selección Múltiple SI

cond_1

acción_1

NO SI

cond_2

acción_2

NO

cond_3

SI

acción_3

M

NO

M Fundamentos de Informática

ETSI Industrial 19 Universidad de Málaga

José Antonio Gómez Ruiz

ANIDAMIENTOS /*caso binario especial*/ if (cond_1) acción_1; else if (cond_2) acción_2; else if (cond_3) acción_3; ...

¡Importante la indentación!

Fundamentos de Informática

/* sintaxis abreviada */ if (cond_1) acción_1; else if (cond_2) acción_2; else if (cond_3) acción_3; ... if (nota=1 && mes=1 && dia max ) max = num; }while( num > 0 ); if( max!=0 ) printf(“El número más grande es %d.\n”, max); else printf(“No se han introducido números.\n”); return 0; } Fundamentos de Informática

ETSI Industrial 29 Universidad de Málaga

José Antonio Gómez Ruiz

BUCLES NO DETERMINISTAS ‰

Bucle pre-condición: while ¾

la condición de terminación se evalúa antes de cada iteración condición

NO

SI

sentencias

SI sentencias_fuera

cuidado con poner involuntariamente un ;

while() { }

tiene que ir SIEMPRE entre paréntesis se ejecuta 0 ó más veces Fundamentos de Informática

ETSI Industrial 30 Universidad de Málaga

José Antonio Gómez Ruiz

BUCLES NO DETERMINISTAS ‰

Bucle pre-condición: while ¾

Algunos ejemplos muy utilizados son: − Bucle controlado por contador − Bucle controlado por centinela − Bucle contador

Fundamentos de Informática

ETSI Industrial 31 Universidad de Málaga

José Antonio Gómez Ruiz

BUCLES NO DETERMINISTAS ‰

Bucle controlado por contador ¾ ¾ ¾

Se ejecuta un numero determinado de veces Se utiliza una variable de control del bucle (vcb) Componentes − Inicialización − Comprobación de la condición − Actualización

i=0; /*Inicialización*/ while(i

Get in touch

Social

© Copyright 2013 - 2024 MYDOKUMENT.COM - All rights reserved.