Está en la página 1de 20

Estructura Selectiva

Algoritmos
Estructura Condicional o Selectiva
• La estructura condicional se utiliza para indicarle al
computador que debe evaluar una condición y, a partir del
resultado, ejecutar el bloque de instrucciones
correspondiente. La forma más común está compuesta por
una proposición (condición) que se evalúa y dos bloques de
instrucciones que se ejecutan, uno cuando la condición es
verdadera (selección simple y doble) y otro cuando ésta es
falsa (únicamente en la selección doble).

• Algunos autores se refieren a este tipo de estructura como


estructura de selección, estructura selectiva o estructura de
decisión.
Frase declarativa
• Para que una proposición (frase declarativa) sea
valida, debe poder afirmarse que es verdadera o
falsa. En programación, se utilizan operadores
relacionales (<, =, >) para establecer la relación
que existe entre dos elementos de la proposición.
Proposiciones
• Adicionalmente, las proposiciones pueden ser
sencillas o compuestas. Las proposiciones
compuestas se forman con dos o más
proposiciones sencillas unidas por operadores
lógicos (y, o, no). Cuando se unen dos
proposiciones por medio del operador lógico “y”,
significa que ambas proposiciones deben ser
verdaderas (conjunción). Cuando se unen dos
proposiciones por medio del operador lógico “o”,
significa que por lo menos una de las dos
proposiciones debe ser verdadera (disyunción).
Tipos de selección
• Por su parte, un bloque de instrucciones puede contener una
o varias instrucciones que se ejecutan una detrás de otra. La
estructura condicional tiene tres variantes:
• selección simple.
• selección doble.
• selección múltiple.

• Las estructuras condicionales simple y doble evalúan una


proposición (condición) que devuelve como resultado
únicamente dos valores posibles y excluyentes: verdadero o
falso. En cambio, la estructura condicional de selección
múltiple permite que la condición devuelva más de un valor
posible y que para cada uno de esos valores se ejecute el
bloque de instrucciones correspondiente.
Selección Simple
• La estructura condicional de selección simple
ejecuta un bloque de instrucciones cuando la
proposición (condición) es verdadera; si esta es
falsa, no hace nada.
Las representación gráfica de la estructura
condicional simple se muestran
en la siguiente figura:
Pseudocódigo en español
si (condición) entonces < acción1>
Pseudocódigo en español (varias
acciones)
si (condición) entonces {<acción1>
<acción2>
......
......
}
Ejemplo selección simple (Si-entonces)
• Dado como dato la calificación de un alumno en un examen, escriba
“aprobado” en caso de que esa calificación sea mayor a 7.
• Dato: cal (variable de tipo real que representa la calificación del alumno).

Inicio
Inicio
cal {
real cal; //se declaran variables
No Escribe(“Dame la calificación del alumno”);
cal >7 Leer(cal); //se lee la variable
Si Si (cal>7) entonces
Escribe(“Aprobado”);
Aprobado }
Fin

Fin
Selección Doble (Si-entonces/Si-no)
• La estructura condicional de selección doble
ejecuta un bloque de instrucciones (A) cuando la
proposición (condición) es verdadera y un bloque
diferente (B) cuando esta es falsa.
Las representación gráfica de la estructura
condicional doble se muestran
en la siguiente figura:
• Pseudocódigo en español

• Pseudocódigo con acción


compuesta
Ejemplo selección doble
• Dado como dato la calificación de un alumno en un examen,
escriba “aprobado” si su calificación es mayor o igual que 7 y
“reprobado” en caso contrario.
• Dato: cal (variable de tipo real que representa la calificación del
alumno).
Inicio

cal

Si No
cal >=7

Aprobado Reprobado

Fin
Pseudocódigo ejemplo

Inicio
{
real cal; //se declaran variables
Escribe(“Dame la calificación del alumno”);//se pide el valor de la variable
Leer(cal); //se lee la variable
Si (cal>=7) entonces //condición
Escribe(“Aprobado”); //si se cumple la condición
sino
Escribe(“Reprobado”); //sino se cumple la condición
}
Fin
Selección múltiple
• A veces es necesario que existan más de dos
elecciones posibles Este problema se podría
resolver por estructuras selectivas simples o dobles
que estuvieran anidadas o en cascada; sin
embargo por este método si el número de
alternativas es grande puede plantear serios
problemas de escritura del algoritmo y
naturalmente de legibilidad.
• La estructura de decisión múltiple evaluará una
expresión que podrá tomar n valores distintos
(siempre un valor enumerado). Según que elija uno
de estos valores en la condición, se realizará una
de las n acciones.
Las representación gráfica de la estructura
selección múltiple se muestran
en la siguiente figura:

• En pseudocódigo:
• Caso que(valor)
• V1: accion1
• V2: accion2
• V3: accion3
• V4,V5: accion4
• ... ....
• Vn: accionn
Ejemplo
• Dado un numero entre 1 y 7 escriba su
correspondiente día de la semana así:
• 1- Lunes 2- Martes 3- Miércoles 4- Jueves 5- Viernes
6- Sábado 7- Domingo.
• Exprese el algoritmo usando Pseudocódigo y
diagrama de flujo.
Pseudocódigo
Inicio
{
entero día;
Escribir(“Diga un número para escribir su día”);
Leer(día);
Caso que (día)
{
Caso 1: Escribe(“Lunes”);
Caso 2: Escribe(“Martes”);
Caso 3: Escribe(“Miércoles”);
Caso 4: Escribe(“Jueves”);
Caso 5: Escribe(“Viernes”);
Caso 6: Escribe(“Sábado”);
Caso 7: Escribe(“Domingo”);
sino
Escribe(“Escribió un numero fuera del rango 1-7”);
}
}
Fin
Diagrama de Flujo
Solución de problemas usando
estructuras algorítmicas repetitivas
• Ejemplo:
• Construya un diagrama de flujo y pseudocódigo tal
que dado como datos los sueldos de los 10
trabajadores de una empresa, obtenga el total de
nómina de la misma.
Diagrama de Flujo
Inicio

NOMINA=0

i=1

Desde
Desde ii hasta
hasta i<=10; i=i+1
<=10; i=i+1

SUE

NOMINA=NOMINA+SUE

NOMINA

FIN
Pseudocódigo
Inicio
{
entero i;
real NOMINA, SUE;
NOMINA=0;
i=1;
Repetir desde i=1 hasta i<=10; i=i+1
{
Escribir(“Dame Sueldo”);
Leer(SUE);
NOMINA=NOMINA+SUE;
}
Escribe(“La nomina es”, NOMINA);
}
Fin

También podría gustarte