Sunteți pe pagina 1din 34

UNIVERSIDAD AUTÓNOMA DEL ESTADO DE MÉXICO

FACULTAD DE INGENIERÍA

COORDINACIÓN DE MATERIAS PROPEDÉUTICAS

LICENCIATURA EN INGENIERÍA CIVIL

PROGRAMACIÓN BÁSICA

“ESTRUCTURA SELECTIVA SIMPLE”

MARÍA DE LOS ÁNGELES CONTRERAS FLORES

SEPTIEMBRE 2015
Guía explicativa

• Este material ha sido desarrollado para alumnos que


cursan la asignatura de Programación Básica
impartida en el primer semestre en la Facultad de
Ingeniería de la UAEM.
• El tema de estructuras de control es impartido en la
Unidad 2 y para ser abordado, es necesario que el
alumno conozca conceptos básicos de programación
como tipos de datos, variables, constantes, tipos de
operadores y expresiones.
Guía explicativa

• Es importante notar que la mayoría de los


estudiantes no han tenido un contacto previo con
asignatura, motivo por el cual, el tema que aquí se
expone intenta proporcionar las herramientas
necesarias para su adecuada comprensión.
Contenido
1. Objetivo
2. Introducción
3. Estructuras de control
4. Concepto de estructuras de control
5. Clasificación de las estructuras de control
6. Estructura de control selectiva simple
7. Ejemplos
8. Repaso
9. Bibliografía
Objetivo

• Analizar, plantear desarrollar e implementar


diagramas de flujo, pseudocódigos y códigos en
Dev C++, utilizando la estructuras de control
selectiva simple.
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 go to. Una instrucción go to permite
pasar el control a cualquier otra parte del programa.
Introducción

Cuando se ejecuta una instrucción go to la secuencia


de ejecución del programa continúa a partir de la
instrucción indicada por ella.

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.
Una característica de todas las estructuras de
control es que tienen sólo un punto de
entrada y un punto de salida.
Estructuras de control
Definición

“Las estructuras de control son responsables


del comportamiento de un método o de un
programa, permiten combinar instrucciones o
sentencias individuales en una simple unidad
lógica con un punto de entrada y un punto de
salida.” (Joyanes, 2002)
Clasificación

Las estructuras de control se clasifican en (figura 1):

1. Secuenciales
2. Decisivas o Selectivas
3. Repetitivas o Iterativas

La programación estructurada se rige bajo siguiente el


principio: “No importa lo complicado que sea un
problema, este siempre podrá ser desarrollado
utilizando las estructuras de control”.
Secuencial Simple

Doble
Selectivas
Estructuras de Cascada
Control
Múltiple

Mientras

Iterativas Para

Repite

Figura 1. Clasificación de las estructuras de control


Estructuras de Control
Selectivas o Alternativas Simple
Entrada

Inicio
Inicio

Concepto
Salida
Condición
Es una estructura con Condición

una sola entrada y una


sola salida en la cual se
realiza una acción
(pudiendo ser una o
varias instrucciones) de
entre varias,
dependiendo de si se
cumple o no una
Fin
condición (Corona, Fin
2011).
Condición

• La condición es una expresión que puede ser


simple o compuesta.

• Por ejemplo:
 Condición simple (x>0)
 Condición compuesta (a>b y a>c)
Condición

• La condición es una expresión booleana, es decir, al


ser evaluada por el programa, el resultado
solamente puede tomar dos valores 0 o 1:

 Si el resultado es cero, entonces la condición es


falsa.
 Si toma el valor de uno, entonces es verdadera.
Simbología

Símbolo:

Significado en pseudocódigo: si
Significado en código: if
La instrucción si (if) permite tomar decisiones (figura
2), se plantea una pregunta y la respuesta será falsa o
verdadera (sí o no).
V F
Condición
Condición

Instrucción 1 Instrucción 2

Figura 2. Representación de la toma de decisión, verdadero y falso


Bloque de sentencias

• Un bloque de sentencias o instrucción compuesta,


es un conjunto de instrucciones delimitadas, por
ejemplo en lenguaje C, C++ y Java se utilizan llaves
que abren y cierran { }.
Bloque de sentencias

• En lenguajes como Pascal, Modula, Delphi y Ada,


se utiliza Begin y End.

• Ojo: Estas instrucciones se toman como si


fueran una sola sentencia para la estructura de
control.
Bloque de sentencias

Pseudocódigo Lenguaje C
Pseudocódigo Lenguaje C
inicio {
inicio {
inst 1 inst 1;
inst 1 inst 1;
inst 2 inst 2;
inst 2 inst 2;
inst 3 inst 3;
inst 3 inst 3;
... …
... …
inst n inst n;
inst n inst n;
fin }
fin }
¿Cómo trabaja?

• Esta estructura dirige al programa para ejecutar


una o más instrucciones solamente si la condición
es verdadera. Si la condición es falsa no se realiza
ninguna acción (Corona, 2011)
¿Cómo trabaja?

• Existen 2 formas de trabajar con esta estructura si


la condición se cumple y depende del número de
instrucciones que serán ejecutadas:
a) Una instrucción
b) Un bloque de instrucciones
a) Una instrucción
Cuando es necesario ejecutar una sola instrucción, no se escribe ni INICIO ni
FIN. El bloque se cierra con el primer ; que encuentre el programa. En la
figura 3 se muestra el diagrama y pseudocódigo correspondientes a este
caso.
Una instrucción:

Pseudocódigo
F
Condición

Si (condición)
V
instrucción 1
Instrucción 1

Código

if(condición)

instrucción 1;

Figura 3. Diagrama de flujo, pseudocódigo y código de la estructura selectiva simple


para una instrucción
b) Bloque de instrucciones
Cuando se requiere ejecutar un bloque de instrucciones,
es importante delimitar el INICIO y FIN del bloque. En la
figura 4 se ilustra este caso.
Bloque de instrucciones

Pseudocódigo

Si (condición)
F inicio
Condición
Instrucción 1
Instrucción 2
V …
Instrucción n
fin
Instrucción 1
Instrucción 2
Código

Instrucción n
if (condición)
inicio
Instrucción 1;
Instrucción 2;

Instrucción n;
Fin_si

Figura 4. Diagrama de flujo, pseudocódigo y código de la estructura selectiva simple


para un bloque de instrucciones
Ejemplos

A continuación se presentan algunos ejemplos que


muestran el empleo de la estructura selectiva simple.

Ejemplo1: Elabore un diagrama de flujo, su algoritmo


y correspondiente pseudocódigo que indique si un
número dado desde el teclado es par
Algoritmo Pseudocódigo

Inicio Programa Par


Pedir un número
Dividir el numero, par: entero
número entre 2
Analizar el Inicio
residuo Escribir (“Dame un
Si el residuo es número”);
igual a cero Leer (número);
entonces par ← numero % 2
El número es Si par == 0
par Escribir (“El
Fin número es par”);
Fin_si
Fin
Diagrama de flujo

Ejemplo 2: Elaborar un
algoritmo que obtenga el
promedio de 3 calificaciones
y muestre “APROBADO” si el
promedio es mayor o igual a
7
Pseudocódigo Código en C
Pseudocódigo Código en C
c1,c2,c3,prom : Real (float) #include <stdio.h>
c1,c2,c3,prom : Real (float) #include <stdio.h>
comienza main ()
comienza main ()
escribe “Introduce las tres {
escribe “Introduce las tres
calificaciones” {
calificaciones” float c1,c2,c3,prom ;
lee c1,c2,c3 float c1,c2,c3,prom ;
lee c1,c2,c3 printf (“Introduce las tres
prom ← (c1+c2+c3) / 3 printf (“Introduce las tres
calificaciones”);
prom ← (c1+c2+c3) / 3 calificaciones”);
escribe “Promedio = ”, prom scanf (“%f %f %f”, &c1,&c2,&c3 );
escribe “Promedio = ”, prom scanf (“%f %f %f”, &c1,&c2,&c3 );
si ( prom >= 7.0 ) entonces prom ← (c1+c2+c3) / 3;
si ( prom >= 7.0 ) entonces prom ← (c1+c2+c3) / 3;
escribe “APROBADO” printf (“Promedio = %f”, prom);
escribe “APROBADO” printf (“Promedio = %f”, prom);
fin si if ( prom >= 7.0 )
fin si if ( prom >= 7.0 )
termina printf (“APROBADO” );
termina printf (“APROBADO” );
}
}
Repaso

• Observa el video que se presenta en el siguiente


link. Contiene un breve repaso de la estructura
selectiva simple y algunos ejemplos.

• https://www.youtube.com/watch?v=T9sg17TVgo4
Bibliografía

1. Cairó Osvaldo, (2006) “Fundamentos de Programación,


Piensa en C), Prentice-Hall, México.
2. Corona Nakamura A. y Ancona Valdez María de los
Ángeles. (2011), Diseño de Algoritmos y su Codificación
en Lenguaje C. 1ª. edición. México. McGrawHill.
3. 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
Gracias

S-ar putea să vă placă și