SlideShare una empresa de Scribd logo
1 de 35
UNIVERSIDAD AUTÓNOMA DEL
ESTADO DE MÉXICO
FACULTAD DE INGENIERÍA
Coordinación de Ciencias Básicas
División de Ingeniería Civil
Unidad de Aprendizaje: Programación Básica
Créditos: 8
“ESTRUCTURAS DE
CONTROL SELECTIVAS”
POR
LETICIA PALMA ROSALES
MARÍA DE LOS ANGELES CONTRERAS FLORES
Guía Explicativa
• El presente material tiene como propósito ser una
herramienta de apoyo para los estudiantes principiantes en el
área de la programación de computadoras. Los temas que
aquí se tratan, son los referentes a las estructuras de control
secuenciales y selectivas o decisivas: selectiva simple,
selectiva doble, selectiva múltiple y en cascada.
• En este contexto se presenta una explicación del
funcionamiento de cada estructura, como trabaja y algunos
ejercicios propuestos que le permitan practicar y reforzar los
conocimientos adquiridos.
CONTENIDO
1. Introducción
2. Definición de Estructuras de Control
3. Clasificación de las Estructuras de Control
4. Empleo de las Estructuras de Control
5. Estructura Secuencial
6. Estructuras de Control Selectivas
7. Ejercicios
Objetivo
• El presente trabajo tiene como objetivo apoyar a los
estudiantes del área de programación básica en la
identificación y utilización de técnicas para la formulación de
algoritmos (pseudocódigos y diagramas de flujo) empleando
las estructuras de control secuencial y selectivas.
Introducción
La programación estructurada nació como solución a
los problemas que se presentaban en la programación
no estructurada, la cual fue empleada durante mucho
tiempo antes de la invención de ésta técnica.
Un programa no estructurado es un programa
procedimental donde las instrucciones se ejecutan en
el mismo orden en que han sido escritas. Sin embargo,
este tipo de programación hace uso de la instrucción
goto. Una instrucción goto permite pasar el control a
cualquier otra parte del programa.
Introducción
Cuando se ejecuta una instrucción goto la secuencia de
ejecución del programa continúa a partir de la instrucción
indicada por goto.
De esta forma, para comprender como funciona un programa es
necesario simular su ejecución. Razón por la cual, en la mayoría
de los casos es muy difícil comprender la lógica de un programa
de este tipo.
Introducción
En los lenguajes de programación, las
estructuras de control permiten modificar
el flujo de ejecución de las instrucciones de
un programa. Todas las estructuras de
control tienen un único punto de entrada y
un único punto de salida.
Estructuras de Control
Definición: “Las estructuras de control controlan el
comportamiento de un método o de un programa. Las
estructuras de Control permiten combinar instrucciones o
sentencias individuales en una simple unidad lógica con un
punto de entrada y un punto de salida”[2]
Clasificación de las Estructuras de
Control
Las estructuras de control se clasifican en tres:
1. Secuenciales
2. Decisivas o Selectivas
3. Repetitivas o Iterativas
Esta es una de las razones que permite que la
programación se rija por los principios de la
programación estructurada.
Empleo de las Estructuras de Control
Algunas funciones de las estructuras de control son
las siguientes:
1. De acuerdo a una condición, ejecutar un grupo u
otro de sentencias (If-then-else y Switch-Case)
2. Ejecutar un grupo de sentencias mientras una
condición sea verdaderas (Do-While)
3. Ejecutar un grupo de sentencias hasta que la
condición evaluada sea falsa (Do-Until)
4. Ejecutar un grupo de sentencias un número
determinado de veces (For), etc.
Estructura Secuencial
La estructura secuencial es una estructura básica, y se presenta
cuando una instrucción del programa sigue a otra, es decir, el
flujo fluye de sentencia a sentencia.
Estructura Secuencial
Una sentencia compuesta es un conjunto de sentencias
encerradas entre llaves ({ }) empleadas para indicar un
flujo secuencial.
{
sentencia1;
sentencia2;
sentencia3;
:
sentencian;
}
Ejercicio
1. Elabore un diagrama de flujo que reciba como datos de
entrada la longitud y el peso de un objeto expresados en pies
y libras, y que de cómo resultado, los datos del mismo objeto
pero expresados en metros y kilos, respectivamente.
Diagrama de Flujo
Inicio
pies
libra
mt pies * 0.0929
kg libra * 0.45359
mt, kg
Fin
Figura 1. Diagrama de Flujo para realizar Conversiones de pies a metros y
de libras a kilos
Estructura Selectiva Simple
La estructura de control de selección principal es la sentencia si
(if). El formato de esta estructura tiene la siguiente sintaxis:
if (condición)
acción;
Estructura Selectiva Simple
La sentencia if funciona de la siguiente forma: cuando se
encuentra la sentencia if dentro de un método, se evalúa la
condición escrita entre paréntesis. Si dicha condición es
verdadera, se ejecuta la acción, en caso contrario, no se realiza
nada. En ambos casos, la ejecución del programa continúa con la
siguiente sentencia.
Estructura Selectiva Simple
V
F
Condición
Acciones
Figura 2. Diagrama de Flujo de la Estructura
Selectiva Simple
Pseudocódigo
Si (condición)
{
sentencia_1;
sentencia_2;
…
sentencia_n;
}
Fin_si
Ejercicios
Ejemplo 1: Elabore un diagrama de flujo, un pseudocódigo y el
correspondiente código fuente en C, de un programa que
muestre si un número es par.
Ejemplo 2: Elabore un diagrama de flujo, un pseudocódigo y el
correspondiente código fuente en C, de un programa que
muestre si una persona es mayor de edad.
Estructura selectiva doble
(si-otro caso)
La estructura selectiva doble tiene como propósito
hacer que el diagrama se bifurque por dos ramas
diferentes en el punto de la toma de decisión. Si la
condición evaluada da como resultado verdadero,
entonces se toma un camino específico (el de la
izquierda), realizando una acción o acciones
determinadas. Por otro lado, si el resultado es falso,
entonces se continúa por otro camino (el de la
derecha), ejecutando otra u otras acciones.
Estructura selectiva doble
(si-otro caso)
Para cualquiera de los dos casos, una vez que se han terminado
de ejecutar las acciones correspondientes, se sigue con la
secuencia normal del diagrama de flujo.
La representación gráfica de ésta estructura, se presenta a
continuación:
Estructura selectiva doble
(si-otro caso)
Pseudocódigo
Si (condición)
Bloque A;
Otro_caso
Bloque B;
Fin_si
Figura 2. Diagrama de Flujo y Pseudocódigo de la
Estructura Selectiva Doble
V F
Condición
Bloque A Bloque B
Ejercicios
Ejemplo 3: Elabore un diagrama de flujo, un pseudocódigo y el
correspondiente código fuente en C, de un programa que
muestre si un número es par o impar.
Ejemplo 4: Elabore un diagrama de flujo, un pseudocódigo y el
correspondiente código fuente en C, de un programa que
muestre si una persona es mayor de edad o si aún es menor de
edad.
Estructura Selectiva Múltiple
(Switch)
Esta estructura se utiliza para seleccionar una de entre múltiples
alternativas, pues permite que el diagrama se bifurque por varias
ramas en el punto de la toma de decisión.
La elección del camino que se ha de seguir, depende de valor
que toma una variable conocida como selector o expresión de
control.
Estructura Selectiva Múltiple
(Switch)
El valor de la expresión o selector solamente puede ser de tipo
entero, booleano o caracter, nunca de tipo real ni cadena de
caracteres.
A continuación se presenta el diagrama de flujo y el
pseudocódigo que ilustra esta estructura selectiva.
Estructura Selectiva Múltiple
(Switch)
…
Selector
Etiqueta 1
Bloque A Bloque NBloque B
…
Bloque N+1
…
Etiqueta 2 Etiqueta n
Figura 3. Diagrama de Flujo de la Estructura Selectiva Múltiple
Estructura Selectiva Múltiple
(Switch)
Esta estructura de control trabaja de la siguiente
manera:
1º. Evalúa la expresión de control o selector
2º. Compara el valor dado con cada una de las
etiquetas del caso
3º. Cuando el valor del selector es igual al de una
etiqueta del caso, entonces comienza la ejecución
del bloque hasta que encuentra la sentencia de
Terminar.
Estructura Selectiva Múltiple
(Switch)
Se debe considerar que cada etiqueta es un valor único,
constante y que además tiene un valor diferente de los otros.
Es importante destacar también que el tipo de datos de las
etiquetas debe ser el mismo que la expresión selector.
Estructura Selectiva Múltiple
(Switch)
Si el valor del selector no llegara a listarse en alguna
etiqueta caso, entonces no se podrá ejecutar ninguna
de las opciones, a menos que se haya especificado una
acción por defecto (omisión = default).
La etiqueta default es opcional, pero se recomienda su
uso, a menos que este completamente seguro de que
todos los valores del selector han sido incluidos en las
etiquetas caso.
Estructura Selectiva Múltiple
(Switch)
Pseudocódigo
Switch (selector)
{
caso etiqueta 1: Bloque A;
Terminar;
caso etiqueta 2: Bloque B;
Terminar;
…
caso etiqueta n: Bloque N;
Terminar;
omisión: Bloque N+1; //opcional
}
Estructura Selectiva Múltiple
(Switch)
Ejemplo 5: Elabore un diagrama de flujo, un
pseudocódigo y el correspondiente código fuente en C,
de un programa que muestre el número de días que
tiene un mes según el año.
Ejemplo 6: Elabore un diagrama de flujo, un pseudocódigo y el
correspondiente código fuente en C, de un programa que
muestre los nombres de los meses, de tal forma que al ingresar
una fecha en forma numérica, se impriman los nombres de los
meses.
Estructura Selectiva en
Cascada
Cuando se realiza el desarrollo para solucionar problemas, es
común que , luego de tomar una decisión y señalar el camino a
seguir, nuevamente es necesario tomar otra decisión. Este
proceso puede repetirse numerosas veces. Una forma de
solucionar esto, es aplicar una estructura selectiva en cascada.
La cual se analiza a continuación.
Estructura Selectiva en
Cascada
Bloque A
Bloque D
Bloque C
…
Bloque N
…
V F
Condición 1
Condición 3Condición 2
Bloque B Condición 4
V V
V
V
Mensaje
Ejercicios
Ejemplo 7: Elabore un diagrama de flujo, un pseudocódigo y el
correspondiente código fuente en C, de un programa que
muestre cuál es el mayor de tres números.
Ejemplo 8: Elabore un diagrama de flujo, un pseudocódigo y el
correspondiente código fuente en C, de un programa que
muestre si un año dado es bisiesto o no.
Bibliografía
1. Cairó Osvaldo, (2006) “Fundamentos de Programación, Piensa
en C), Prentice-Hall, México.
2. Joyanes Aguilar Luis et al, (2002), “Programación en Java 2,
Algoritmos, Estructuras de Datos y Programación Orientada a
Objetos”, McGraw-Hill, España

Más contenido relacionado

La actualidad más candente

Análisis numérico
Análisis numéricoAnálisis numérico
Análisis numéricoFidel Lopez
 
Tema 1-2 identificadores - variable y constante
Tema 1-2 identificadores - variable y constanteTema 1-2 identificadores - variable y constante
Tema 1-2 identificadores - variable y constanteRufi Flores
 
Diferenciación numérica Metodos Numericos
Diferenciación numérica Metodos NumericosDiferenciación numérica Metodos Numericos
Diferenciación numérica Metodos NumericosTensor
 
1.5. parametros agrupados
1.5.  parametros agrupados1.5.  parametros agrupados
1.5. parametros agrupadosITCM
 
Reporte metodos de busqueda y ordenamiento
Reporte metodos de busqueda y ordenamientoReporte metodos de busqueda y ordenamiento
Reporte metodos de busqueda y ordenamientoTAtiizz Villalobos
 
Estructuras lineales unidad 3
Estructuras lineales unidad 3Estructuras lineales unidad 3
Estructuras lineales unidad 3eliezerbs
 
Ejercicios de estructura selectiva anidadas
Ejercicios de estructura selectiva anidadasEjercicios de estructura selectiva anidadas
Ejercicios de estructura selectiva anidadasAlejandro Pacheco
 
Tipos de Autómatas 
Tipos de Autómatas Tipos de Autómatas 
Tipos de Autómatas yelizabeth_20
 
Autómatas finitos no deterministas
Autómatas finitos no deterministasAutómatas finitos no deterministas
Autómatas finitos no deterministasOmega Tech
 
Tipos de datos, identificadores, variables y constantes
Tipos de datos, identificadores,  variables y constantesTipos de datos, identificadores,  variables y constantes
Tipos de datos, identificadores, variables y constantesIEO Santo Tomás
 
EJERCICIOS DE ALGORITMOS
EJERCICIOS DE ALGORITMOSEJERCICIOS DE ALGORITMOS
EJERCICIOS DE ALGORITMOS1002pc3
 
Teoría De La Complejidad Algoritmica
Teoría De La Complejidad AlgoritmicaTeoría De La Complejidad Algoritmica
Teoría De La Complejidad AlgoritmicaRolf Pinto
 
Introduccion a la administracion de los procesos y el procesador (S.O)
Introduccion a la administracion de los procesos y el procesador (S.O)Introduccion a la administracion de los procesos y el procesador (S.O)
Introduccion a la administracion de los procesos y el procesador (S.O)Javier Alvarez
 
Identificadores en Lógia de Programación
Identificadores en Lógia de ProgramaciónIdentificadores en Lógia de Programación
Identificadores en Lógia de Programaciónnormaroldano
 
Ejercicios resueltos en el Laboratorio de estructuras struct registros
Ejercicios resueltos en el Laboratorio de estructuras struct registrosEjercicios resueltos en el Laboratorio de estructuras struct registros
Ejercicios resueltos en el Laboratorio de estructuras struct registrosrasave
 

La actualidad más candente (20)

Análisis numérico
Análisis numéricoAnálisis numérico
Análisis numérico
 
ALGORITMO RESUELTOS EN PSEINT
ALGORITMO RESUELTOS EN PSEINTALGORITMO RESUELTOS EN PSEINT
ALGORITMO RESUELTOS EN PSEINT
 
Tema 1-2 identificadores - variable y constante
Tema 1-2 identificadores - variable y constanteTema 1-2 identificadores - variable y constante
Tema 1-2 identificadores - variable y constante
 
preguntas de algoritmos
preguntas de algoritmospreguntas de algoritmos
preguntas de algoritmos
 
Diferenciación numérica Metodos Numericos
Diferenciación numérica Metodos NumericosDiferenciación numérica Metodos Numericos
Diferenciación numérica Metodos Numericos
 
1.5. parametros agrupados
1.5.  parametros agrupados1.5.  parametros agrupados
1.5. parametros agrupados
 
Ppt algoritmo
Ppt algoritmoPpt algoritmo
Ppt algoritmo
 
Reporte metodos de busqueda y ordenamiento
Reporte metodos de busqueda y ordenamientoReporte metodos de busqueda y ordenamiento
Reporte metodos de busqueda y ordenamiento
 
Autómatas Finitos
Autómatas FinitosAutómatas Finitos
Autómatas Finitos
 
Estructuras lineales unidad 3
Estructuras lineales unidad 3Estructuras lineales unidad 3
Estructuras lineales unidad 3
 
Ejercicios de estructura selectiva anidadas
Ejercicios de estructura selectiva anidadasEjercicios de estructura selectiva anidadas
Ejercicios de estructura selectiva anidadas
 
Tipos de Autómatas 
Tipos de Autómatas Tipos de Autómatas 
Tipos de Autómatas 
 
Autómatas finitos no deterministas
Autómatas finitos no deterministasAutómatas finitos no deterministas
Autómatas finitos no deterministas
 
Tipos de datos, identificadores, variables y constantes
Tipos de datos, identificadores,  variables y constantesTipos de datos, identificadores,  variables y constantes
Tipos de datos, identificadores, variables y constantes
 
EJERCICIOS DE ALGORITMOS
EJERCICIOS DE ALGORITMOSEJERCICIOS DE ALGORITMOS
EJERCICIOS DE ALGORITMOS
 
Teoría De La Complejidad Algoritmica
Teoría De La Complejidad AlgoritmicaTeoría De La Complejidad Algoritmica
Teoría De La Complejidad Algoritmica
 
Introduccion a la administracion de los procesos y el procesador (S.O)
Introduccion a la administracion de los procesos y el procesador (S.O)Introduccion a la administracion de los procesos y el procesador (S.O)
Introduccion a la administracion de los procesos y el procesador (S.O)
 
Identificadores en Lógia de Programación
Identificadores en Lógia de ProgramaciónIdentificadores en Lógia de Programación
Identificadores en Lógia de Programación
 
Algebra relacional
Algebra relacionalAlgebra relacional
Algebra relacional
 
Ejercicios resueltos en el Laboratorio de estructuras struct registros
Ejercicios resueltos en el Laboratorio de estructuras struct registrosEjercicios resueltos en el Laboratorio de estructuras struct registros
Ejercicios resueltos en el Laboratorio de estructuras struct registros
 

Destacado

Estructuras de control selectivas
Estructuras de control selectivasEstructuras de control selectivas
Estructuras de control selectivasReina Rodriguez
 
Estructuras de control repetitivos
Estructuras de control repetitivosEstructuras de control repetitivos
Estructuras de control repetitivosReina Rodriguez
 
Estructura selectiva multiple
Estructura selectiva multipleEstructura selectiva multiple
Estructura selectiva multipleNora O. Martínez
 
Diagramas de flujo - Estructuras de Control (For, While, Do Whille y Switch C...
Diagramas de flujo - Estructuras de Control (For, While, Do Whille y Switch C...Diagramas de flujo - Estructuras de Control (For, While, Do Whille y Switch C...
Diagramas de flujo - Estructuras de Control (For, While, Do Whille y Switch C...Marcelo Vilela Pardo
 
Estructura de control repetitiva
Estructura de control repetitivaEstructura de control repetitiva
Estructura de control repetitivavillandri pachco
 
4. estructuras selectivas
4. estructuras selectivas4. estructuras selectivas
4. estructuras selectivasmartell024
 
Lógica y Algoritmos 4. estructuras secuenciales y selectivas
Lógica y Algoritmos 4. estructuras secuenciales y selectivasLógica y Algoritmos 4. estructuras secuenciales y selectivas
Lógica y Algoritmos 4. estructuras secuenciales y selectivasEdward Ropero
 
Estructuras de control
Estructuras de controlEstructuras de control
Estructuras de controlLic_Vera
 
Estructuras de control
Estructuras de controlEstructuras de control
Estructuras de controlparada137
 
Estructuras de Control
Estructuras de ControlEstructuras de Control
Estructuras de ControlAndres Carrera
 
Clase 2 Estructuras de Control
Clase 2 Estructuras de ControlClase 2 Estructuras de Control
Clase 2 Estructuras de ControlDesireé mart?ez
 
Estructuras repetitivas - pseudocodigo
Estructuras repetitivas - pseudocodigoEstructuras repetitivas - pseudocodigo
Estructuras repetitivas - pseudocodigoRosbelia Balza
 
Estructuras de control selectiva
Estructuras de control selectivaEstructuras de control selectiva
Estructuras de control selectivaIEO Santo Tomás
 
Estructuras de control
Estructuras de controlEstructuras de control
Estructuras de controlralhum
 

Destacado (20)

Estructuras de control selectivas
Estructuras de control selectivasEstructuras de control selectivas
Estructuras de control selectivas
 
Estructuras de control repetitivos
Estructuras de control repetitivosEstructuras de control repetitivos
Estructuras de control repetitivos
 
Estructura selectiva multiple
Estructura selectiva multipleEstructura selectiva multiple
Estructura selectiva multiple
 
Estructura selectiva simple
Estructura selectiva simpleEstructura selectiva simple
Estructura selectiva simple
 
Diagramas de flujo - Estructuras de Control (For, While, Do Whille y Switch C...
Diagramas de flujo - Estructuras de Control (For, While, Do Whille y Switch C...Diagramas de flujo - Estructuras de Control (For, While, Do Whille y Switch C...
Diagramas de flujo - Estructuras de Control (For, While, Do Whille y Switch C...
 
Estructura selectiva
Estructura selectivaEstructura selectiva
Estructura selectiva
 
Estructura de control repetitiva
Estructura de control repetitivaEstructura de control repetitiva
Estructura de control repetitiva
 
4. estructuras selectivas
4. estructuras selectivas4. estructuras selectivas
4. estructuras selectivas
 
Lógica y Algoritmos 4. estructuras secuenciales y selectivas
Lógica y Algoritmos 4. estructuras secuenciales y selectivasLógica y Algoritmos 4. estructuras secuenciales y selectivas
Lógica y Algoritmos 4. estructuras secuenciales y selectivas
 
Estructuras de control
Estructuras de controlEstructuras de control
Estructuras de control
 
Estructuras de control
Estructuras de controlEstructuras de control
Estructuras de control
 
Estructuras de control
Estructuras de controlEstructuras de control
Estructuras de control
 
Estructuras de Control
Estructuras de ControlEstructuras de Control
Estructuras de Control
 
Clase 2 Estructuras de Control
Clase 2 Estructuras de ControlClase 2 Estructuras de Control
Clase 2 Estructuras de Control
 
Pruebas de escritorio
Pruebas de escritorioPruebas de escritorio
Pruebas de escritorio
 
Diagramas De Flujo
Diagramas De FlujoDiagramas De Flujo
Diagramas De Flujo
 
Estructuras repetitivas - pseudocodigo
Estructuras repetitivas - pseudocodigoEstructuras repetitivas - pseudocodigo
Estructuras repetitivas - pseudocodigo
 
Estructuras de control selectiva
Estructuras de control selectivaEstructuras de control selectiva
Estructuras de control selectiva
 
Estructuras de control
Estructuras de controlEstructuras de control
Estructuras de control
 
Estructuras repetitivas
Estructuras repetitivasEstructuras repetitivas
Estructuras repetitivas
 

Similar a Estructuras de control selectivas

Similar a Estructuras de control selectivas (20)

Power point
Power pointPower point
Power point
 
Estructura selectiva y repetitiva.docx
Estructura selectiva y repetitiva.docxEstructura selectiva y repetitiva.docx
Estructura selectiva y repetitiva.docx
 
INTRODCCION A LA DIAGRAMAS DE FLUJO.ppt
INTRODCCION A LA DIAGRAMAS DE FLUJO.pptINTRODCCION A LA DIAGRAMAS DE FLUJO.ppt
INTRODCCION A LA DIAGRAMAS DE FLUJO.ppt
 
Diagrama de Flujo
Diagrama de FlujoDiagrama de Flujo
Diagrama de Flujo
 
Diagramacion
DiagramacionDiagramacion
Diagramacion
 
Diagrama secuencial
Diagrama secuencialDiagrama secuencial
Diagrama secuencial
 
Clase 2 diagramas de flujo
Clase 2 diagramas de flujoClase 2 diagramas de flujo
Clase 2 diagramas de flujo
 
Estructuras de control secuencial
Estructuras de control secuencialEstructuras de control secuencial
Estructuras de control secuencial
 
Fijo de control I
Fijo de control IFijo de control I
Fijo de control I
 
Fijo de control i
Fijo de control iFijo de control i
Fijo de control i
 
Fijo de control i
Fijo de control iFijo de control i
Fijo de control i
 
Guía Práctica de Diagramas de Flujo
Guía Práctica de Diagramas de FlujoGuía Práctica de Diagramas de Flujo
Guía Práctica de Diagramas de Flujo
 
Diagramacion
DiagramacionDiagramacion
Diagramacion
 
Algoritmo diagrama de_flujo
Algoritmo diagrama de_flujoAlgoritmo diagrama de_flujo
Algoritmo diagrama de_flujo
 
Secuencial
SecuencialSecuencial
Secuencial
 
Intrucciones de control yamileth rivas c.i 11665024
Intrucciones de control   yamileth rivas c.i  11665024Intrucciones de control   yamileth rivas c.i  11665024
Intrucciones de control yamileth rivas c.i 11665024
 
Estructuras basicas de un algoritmo
Estructuras basicas de un algoritmoEstructuras basicas de un algoritmo
Estructuras basicas de un algoritmo
 
Estructuras secuenciales, selectivas e iterativas 01
Estructuras secuenciales, selectivas e iterativas 01Estructuras secuenciales, selectivas e iterativas 01
Estructuras secuenciales, selectivas e iterativas 01
 
Tema5.ppt
Tema5.pptTema5.ppt
Tema5.ppt
 
diagramas5.ppt
diagramas5.pptdiagramas5.ppt
diagramas5.ppt
 

Más de marigelcontreras

Apuntes programacion basica
Apuntes programacion basicaApuntes programacion basica
Apuntes programacion basicamarigelcontreras
 
Estructuras iterativas y ejemplos propuestos
Estructuras iterativas y ejemplos propuestosEstructuras iterativas y ejemplos propuestos
Estructuras iterativas y ejemplos propuestosmarigelcontreras
 
Estructuras iterativas y ejemplos propuestos
Estructuras iterativas y ejemplos propuestosEstructuras iterativas y ejemplos propuestos
Estructuras iterativas y ejemplos propuestosmarigelcontreras
 
Aplicación de arreglos bidimensionales
Aplicación de arreglos bidimensionalesAplicación de arreglos bidimensionales
Aplicación de arreglos bidimensionalesmarigelcontreras
 

Más de marigelcontreras (7)

Apuntes programacion basica
Apuntes programacion basicaApuntes programacion basica
Apuntes programacion basica
 
Estructuras iterativas
Estructuras iterativasEstructuras iterativas
Estructuras iterativas
 
Estructuras iterativas
Estructuras iterativasEstructuras iterativas
Estructuras iterativas
 
Estructuras iterativas y ejemplos propuestos
Estructuras iterativas y ejemplos propuestosEstructuras iterativas y ejemplos propuestos
Estructuras iterativas y ejemplos propuestos
 
Estructuras iterativas y ejemplos propuestos
Estructuras iterativas y ejemplos propuestosEstructuras iterativas y ejemplos propuestos
Estructuras iterativas y ejemplos propuestos
 
Arreglos unidimensionales
Arreglos unidimensionalesArreglos unidimensionales
Arreglos unidimensionales
 
Aplicación de arreglos bidimensionales
Aplicación de arreglos bidimensionalesAplicación de arreglos bidimensionales
Aplicación de arreglos bidimensionales
 

Estructuras de control selectivas

  • 1. UNIVERSIDAD AUTÓNOMA DEL ESTADO DE MÉXICO FACULTAD DE INGENIERÍA Coordinación de Ciencias Básicas División de Ingeniería Civil Unidad de Aprendizaje: Programación Básica Créditos: 8
  • 2. “ESTRUCTURAS DE CONTROL SELECTIVAS” POR LETICIA PALMA ROSALES MARÍA DE LOS ANGELES CONTRERAS FLORES
  • 3. Guía Explicativa • El presente material tiene como propósito ser una herramienta de apoyo para los estudiantes principiantes en el área de la programación de computadoras. Los temas que aquí se tratan, son los referentes a las estructuras de control secuenciales y selectivas o decisivas: selectiva simple, selectiva doble, selectiva múltiple y en cascada. • En este contexto se presenta una explicación del funcionamiento de cada estructura, como trabaja y algunos ejercicios propuestos que le permitan practicar y reforzar los conocimientos adquiridos.
  • 4. CONTENIDO 1. Introducción 2. Definición de Estructuras de Control 3. Clasificación de las Estructuras de Control 4. Empleo de las Estructuras de Control 5. Estructura Secuencial 6. Estructuras de Control Selectivas 7. Ejercicios
  • 5. Objetivo • El presente trabajo tiene como objetivo apoyar a los estudiantes del área de programación básica en la identificación y utilización de técnicas para la formulación de algoritmos (pseudocódigos y diagramas de flujo) empleando las estructuras de control secuencial y selectivas.
  • 6. Introducción La programación estructurada nació como solución a los problemas que se presentaban en la programación no estructurada, la cual fue empleada durante mucho tiempo antes de la invención de ésta técnica. Un programa no estructurado es un programa procedimental donde las instrucciones se ejecutan en el mismo orden en que han sido escritas. Sin embargo, este tipo de programación hace uso de la instrucción goto. Una instrucción goto permite pasar el control a cualquier otra parte del programa.
  • 7. Introducción Cuando se ejecuta una instrucción goto la secuencia de ejecución del programa continúa a partir de la instrucción indicada por goto. De esta forma, para comprender como funciona un programa es necesario simular su ejecución. Razón por la cual, en la mayoría de los casos es muy difícil comprender la lógica de un programa de este tipo.
  • 8. Introducción En los lenguajes de programación, las estructuras de control permiten modificar el flujo de ejecución de las instrucciones de un programa. Todas las estructuras de control tienen un único punto de entrada y un único punto de salida.
  • 9. Estructuras de Control Definición: “Las estructuras de control controlan el comportamiento de un método o de un programa. Las estructuras de Control permiten combinar instrucciones o sentencias individuales en una simple unidad lógica con un punto de entrada y un punto de salida”[2]
  • 10. Clasificación de las Estructuras de Control Las estructuras de control se clasifican en tres: 1. Secuenciales 2. Decisivas o Selectivas 3. Repetitivas o Iterativas Esta es una de las razones que permite que la programación se rija por los principios de la programación estructurada.
  • 11. Empleo de las Estructuras de Control Algunas funciones de las estructuras de control son las siguientes: 1. De acuerdo a una condición, ejecutar un grupo u otro de sentencias (If-then-else y Switch-Case) 2. Ejecutar un grupo de sentencias mientras una condición sea verdaderas (Do-While) 3. Ejecutar un grupo de sentencias hasta que la condición evaluada sea falsa (Do-Until) 4. Ejecutar un grupo de sentencias un número determinado de veces (For), etc.
  • 12. Estructura Secuencial La estructura secuencial es una estructura básica, y se presenta cuando una instrucción del programa sigue a otra, es decir, el flujo fluye de sentencia a sentencia.
  • 13. Estructura Secuencial Una sentencia compuesta es un conjunto de sentencias encerradas entre llaves ({ }) empleadas para indicar un flujo secuencial. { sentencia1; sentencia2; sentencia3; : sentencian; }
  • 14. Ejercicio 1. Elabore un diagrama de flujo que reciba como datos de entrada la longitud y el peso de un objeto expresados en pies y libras, y que de cómo resultado, los datos del mismo objeto pero expresados en metros y kilos, respectivamente.
  • 15. Diagrama de Flujo Inicio pies libra mt pies * 0.0929 kg libra * 0.45359 mt, kg Fin Figura 1. Diagrama de Flujo para realizar Conversiones de pies a metros y de libras a kilos
  • 16. Estructura Selectiva Simple La estructura de control de selección principal es la sentencia si (if). El formato de esta estructura tiene la siguiente sintaxis: if (condición) acción;
  • 17. Estructura Selectiva Simple La sentencia if funciona de la siguiente forma: cuando se encuentra la sentencia if dentro de un método, se evalúa la condición escrita entre paréntesis. Si dicha condición es verdadera, se ejecuta la acción, en caso contrario, no se realiza nada. En ambos casos, la ejecución del programa continúa con la siguiente sentencia.
  • 18. Estructura Selectiva Simple V F Condición Acciones Figura 2. Diagrama de Flujo de la Estructura Selectiva Simple Pseudocódigo Si (condición) { sentencia_1; sentencia_2; … sentencia_n; } Fin_si
  • 19. Ejercicios Ejemplo 1: Elabore un diagrama de flujo, un pseudocódigo y el correspondiente código fuente en C, de un programa que muestre si un número es par. Ejemplo 2: Elabore un diagrama de flujo, un pseudocódigo y el correspondiente código fuente en C, de un programa que muestre si una persona es mayor de edad.
  • 20. Estructura selectiva doble (si-otro caso) La estructura selectiva doble tiene como propósito hacer que el diagrama se bifurque por dos ramas diferentes en el punto de la toma de decisión. Si la condición evaluada da como resultado verdadero, entonces se toma un camino específico (el de la izquierda), realizando una acción o acciones determinadas. Por otro lado, si el resultado es falso, entonces se continúa por otro camino (el de la derecha), ejecutando otra u otras acciones.
  • 21. Estructura selectiva doble (si-otro caso) Para cualquiera de los dos casos, una vez que se han terminado de ejecutar las acciones correspondientes, se sigue con la secuencia normal del diagrama de flujo. La representación gráfica de ésta estructura, se presenta a continuación:
  • 22. Estructura selectiva doble (si-otro caso) Pseudocódigo Si (condición) Bloque A; Otro_caso Bloque B; Fin_si Figura 2. Diagrama de Flujo y Pseudocódigo de la Estructura Selectiva Doble V F Condición Bloque A Bloque B
  • 23. Ejercicios Ejemplo 3: Elabore un diagrama de flujo, un pseudocódigo y el correspondiente código fuente en C, de un programa que muestre si un número es par o impar. Ejemplo 4: Elabore un diagrama de flujo, un pseudocódigo y el correspondiente código fuente en C, de un programa que muestre si una persona es mayor de edad o si aún es menor de edad.
  • 24. Estructura Selectiva Múltiple (Switch) Esta estructura se utiliza para seleccionar una de entre múltiples alternativas, pues permite que el diagrama se bifurque por varias ramas en el punto de la toma de decisión. La elección del camino que se ha de seguir, depende de valor que toma una variable conocida como selector o expresión de control.
  • 25. Estructura Selectiva Múltiple (Switch) El valor de la expresión o selector solamente puede ser de tipo entero, booleano o caracter, nunca de tipo real ni cadena de caracteres. A continuación se presenta el diagrama de flujo y el pseudocódigo que ilustra esta estructura selectiva.
  • 26. Estructura Selectiva Múltiple (Switch) … Selector Etiqueta 1 Bloque A Bloque NBloque B … Bloque N+1 … Etiqueta 2 Etiqueta n Figura 3. Diagrama de Flujo de la Estructura Selectiva Múltiple
  • 27. Estructura Selectiva Múltiple (Switch) Esta estructura de control trabaja de la siguiente manera: 1º. Evalúa la expresión de control o selector 2º. Compara el valor dado con cada una de las etiquetas del caso 3º. Cuando el valor del selector es igual al de una etiqueta del caso, entonces comienza la ejecución del bloque hasta que encuentra la sentencia de Terminar.
  • 28. Estructura Selectiva Múltiple (Switch) Se debe considerar que cada etiqueta es un valor único, constante y que además tiene un valor diferente de los otros. Es importante destacar también que el tipo de datos de las etiquetas debe ser el mismo que la expresión selector.
  • 29. Estructura Selectiva Múltiple (Switch) Si el valor del selector no llegara a listarse en alguna etiqueta caso, entonces no se podrá ejecutar ninguna de las opciones, a menos que se haya especificado una acción por defecto (omisión = default). La etiqueta default es opcional, pero se recomienda su uso, a menos que este completamente seguro de que todos los valores del selector han sido incluidos en las etiquetas caso.
  • 30. Estructura Selectiva Múltiple (Switch) Pseudocódigo Switch (selector) { caso etiqueta 1: Bloque A; Terminar; caso etiqueta 2: Bloque B; Terminar; … caso etiqueta n: Bloque N; Terminar; omisión: Bloque N+1; //opcional }
  • 31. Estructura Selectiva Múltiple (Switch) Ejemplo 5: Elabore un diagrama de flujo, un pseudocódigo y el correspondiente código fuente en C, de un programa que muestre el número de días que tiene un mes según el año. Ejemplo 6: Elabore un diagrama de flujo, un pseudocódigo y el correspondiente código fuente en C, de un programa que muestre los nombres de los meses, de tal forma que al ingresar una fecha en forma numérica, se impriman los nombres de los meses.
  • 32. Estructura Selectiva en Cascada Cuando se realiza el desarrollo para solucionar problemas, es común que , luego de tomar una decisión y señalar el camino a seguir, nuevamente es necesario tomar otra decisión. Este proceso puede repetirse numerosas veces. Una forma de solucionar esto, es aplicar una estructura selectiva en cascada. La cual se analiza a continuación.
  • 33. Estructura Selectiva en Cascada Bloque A Bloque D Bloque C … Bloque N … V F Condición 1 Condición 3Condición 2 Bloque B Condición 4 V V V V Mensaje
  • 34. Ejercicios Ejemplo 7: Elabore un diagrama de flujo, un pseudocódigo y el correspondiente código fuente en C, de un programa que muestre cuál es el mayor de tres números. Ejemplo 8: Elabore un diagrama de flujo, un pseudocódigo y el correspondiente código fuente en C, de un programa que muestre si un año dado es bisiesto o no.
  • 35. Bibliografía 1. Cairó Osvaldo, (2006) “Fundamentos de Programación, Piensa en C), Prentice-Hall, México. 2. Joyanes Aguilar Luis et al, (2002), “Programación en Java 2, Algoritmos, Estructuras de Datos y Programación Orientada a Objetos”, McGraw-Hill, España