Вы находитесь на странице: 1из 11

Guadalupe Abigail Rodrguez

Oviedo
Algoritmos y lenguajes de
programacin
UDI-07
Estructuras selectivas
Rafael de la Cruz Prez

ndice

1.

Estructuras selectivas....................................................................................... 3
2 | Pgina

2.

Estructuras cclicas o repetitivas........................................................................8

3.

Conclusin.................................................................................................... 10

4.

Bibliografas.................................................................................................. 10

3 | Pgina

1. Estructuras selectivas
1.1 Simple
Permite ejecutar una accin o grupo de acciones solo si se cumple una determinada
condicin, es decir, donde la condicin C es un grupo de condiciones a evaluarse. El
bloque A representa la operacin o conjunto de operaciones a realizar si la condicin
C es verdadera.

Tambin se puede decir que se evala la condicin C si es verdadero (true) se


ejecuta todas las sentencias que estn dentro de las llaves (en C++), hasta el Finsi (en
pseudocdigo) para luego continuar con la siguiente lnea de cdigo que esta despus.
En caso que la condicin C sea falsa (false) no se ejecutara las sentencias dentro de
las llaves (en C++), hasta el Finsi (en pseudocdigo), y el control pasa a la siguiente
instruccin de programa (en orden descendente).
Ejemplo

Explicacin
Pedimos el nmero, lo leemos, ahora evaluamos la condicin: si (el residuo del
nmero entre tres es cero) se ejecuta todas las sentencias que estn dentro de los
corchetes (en C++), hasta el Finsi (en pseudocdigo), en el ejemplo solo tenemos
una sentencia pero se pueden poner ms por ejemplo se pudo poner:

if(numero%3==0)
{
cout<<El nmero es mltiplo de tres<<endl;
cout<<El doble del nmero es <<numero*2<<endl;
}
cout<<El numero ingresado es<<numero<<endl;

4 | Pgina


En el caso de que haya una sola sentencia a ejecutarse cuando la condicin a
evaluar sea verdadera como en el ejemplo anterior se pueden omitir los
corchetes, en caso de que haya ms de dos sentencias el uso de corchetes
es
obligatoria.
Por lo tanto seria tambin correcto.

if(numero%3==0)
cout<<El nmero es mltiplo de tres<<endl;
cout<<El numero ingresado es<<numero<<endl;

1.2 Doble
Permite seleccionar una ruta de dos posibles, en base a la verdad (V) o falsedad (F) de
la condicin
Si (if) la condicin es verdadera, se ejecutan las sentencias: {a1, a2, a3, , an} , sino
(else) se ejecutaran las sentencias: {b1, b2, b3, , bn}
Si la sentencia solo tiene una lnea no es necesario poner llaves.

1.3

Anidada

Una
puede
otra
hay que tener
anidamiento

estructura de decisin
estar anidada dentro de
estructura de decisin,
en
cuenta
que
el
sea total.

Se
debe
que
una
debe
tener
sola
salida
que
anida
anidada.

mantener el concepto
estructura de decisin
una sola entrada y una
tanto para la estructura
como para la estructura

5 | Pgina

Ejemplo

#include<iostream.h>
int main(){
int num;
cout<<"Ingrese un numero : ";
cin>>num;
if(num>0){
cout<<"El nmero es mayor que cero"<<endl;
}
else{
cout<<"El nmero no es mayor que cero"<<endl;
}
system("pause");
return 0;
}

Si ingresamos el nmero: 3 nos saldr en pantalla: El nmero es mayor que


cero
Si ingresamos el nmero: -45 nos saldr en pantalla: El nmero no es mayor
que cero

6 | Pgina

1.4 Mltiple
Esta instruccin se utiliza para seleccionar una alternativa dentro de mltiples opciones
disponibles.
El contenido de la variable selector debe ser ordinal, es decir debe ser de
tipo int o char o sus variantes de int: long int, short int, no est permitido
datos
de
tipo float.
Es decir si la variable selector es exactamente igual a la constante J, entonces se
ejecutara la sentencia J(s), luego de encontrar la instruccin break, har que el control
del programa salga fuera del switch.
Si no cumple la condicin anterior pasara a evaluar el siguiente caso y as
sucesivamente. Si ninguno de los casos se cumple ejecuta las sentencias default.

Ejemplo
Escribir un
algoritmo
pida
el
colegio de

que

Procedencia que puede ser A,


(N), y Particular (P).
monto a pagar.

B, C y el modo de educacin tipo Nacional


Segn el siguiente cuadro hallar el

Nacional

Particular

50

25

40

29

30

15

(Compilado en dev C++)


#include<iostream.h>

7 | Pgina

int main(){
char c,p;
int monto;
cout<<"Colegio de procedencia : A / B / C : ";
cin>>c;
cout<<"Ingrese el modo de educacin : N / P : ";
cin>>p;
switch(c){
case 'A':
if(p=='N')
monto=50;
if(p=='P')
monto=25;
break;
case 'B':
if(p=='N')
monto=40;
if(p=='P')
monto=29;
break;
case 'C':
if(p=='N')
monto=30;
if(p=='P')
monto=15;
break;
default:
monto=0;
break;
}
if(monto!=0)
cout<<"El importe a pagar es "<<monto<<endl;
else
cout<<"Asegrese de haber ingresado bien los
datos"<<endl;
system("pause");
return 0;
}
Explicacin
Se pide el ingreso del colegio y el modo de educacin tener en cuenta que
una misma letra en mayscula y en minscula son diferentes en C++
por lo tanto si se ingresan como colegio: a (en minscula) no ser
reconocido.
En el switch(c) se evala el colegio de procedencia por ser un dato de tipo
char no hay ningn problema (lo mismo con enteros), despus se
busca en donde coincide el dato; por ejemplo si fuera: B la letra
ingresada entra a ejecutar todo en cdigo que est debajo de case
B (o al costado depende de cmo est escrita el cdigo) hasta
encontrar el break que hace que salga de switch(sale del corchete del

8 | Pgina

switch), en caso de no encontrar ninguna coincidencia con los casos en el


cdigo entra a ejecutar el cdigo debajo del default (el uso del default es
opcional) hasta encontrar el break que hace salir del switch y se
continua con las dems sentencias; en el caso de que no se ponga
un default y no se encuentre ninguna coincidencia solo saldr del switch.

2. Estructuras cclicas o repetitivas


2.1

Instruccin While
while (condicion)
{
instruccin 1;
..............
instruccin N;
}
Ejecuta una instruccin o un bloque de instrucciones cero o ms veces, dependiendo
del valor de la condicin.
Se evala la condicin, y si es cierta, se ejecuta la instruccin o bloque de
instrucciones y se vuelve a evaluar la condicin; pero si la condicin es falsa, se pasa a
ejecutar la siguiente instruccin despus del while.
Ejemplo de instruccin while en C++. Programa que lee nmeros enteros hasta que se
lee un nmero negativo. Se muestra la suma de todos los nmeros ledos excepto el
nmero negativo.

2.2 Instruccin dowhile


do

9 | Pgina

{
Instruccin 1;
..............
Instruccin N;
}
while (condicion);
Ejecuta una instruccin o un bloque de instrucciones, una o ms veces, dependiendo
del valor de la condicin.
Se ejecuta la instruccin o bloque de instrucciones y a continuacin se evala la
condicin. Si la condicin es cierta, se vuelve a ejecutar la instruccin o bloque de
instrucciones, y si es falsa, pasa a ejecutarse la siguiente instruccin despus del dowhile.
Cuando se utiliza una instruccin do-while el bloque de instrucciones se ejecuta al
menos una vez, ya que la condicin se evala al final. En cambio, con una instruccin
while, puede suceder que el bloque de instrucciones no llegue a ejecutarse nunca si la
condicin inicialmente es falsa.
Ejemplo de instruccin do while en C++. Programa que lee un nmero entero. El
nmero debe estar comprendido entre 1 y 100

2.3 Instruccin For


Un bucle for hace que una instruccin o bloque de instrucciones se repitan un nmero
determinado de veces mientras se cumpla la condicin.
for(inicializacin; condicion; incremento/decremento)
{
Instruccin 1;
...........
Instruccin N;
}
A continuacin de la palabra for y entre parntesis debe haber siempre tres zonas
separadas por punto y coma:
Zona de inicializacin
Zona de condicin
Zona de incremento o decremento.

10 | P g i n a

En alguna ocasin puede no ser necesario escribir alguna de ellas. En ese caso se
pueden dejar en blanco, pero el punto y la coma deben aparecer.
El funcionamiento de un bucle for el siguiente:
1.

Se inicializa la variable o variables de control.

2.

Se evala la condicin.

3.

Si la condicin es cierta se ejecutan las instrucciones. Si es falsa, finaliza la


ejecucin del bucle y contina el programa en la siguiente instruccin
despus del for

4.

Se actualiza la variable o variables de control (incremento/decremento)

5.

Se pasa al punto 2).

Esta instruccin es especialmente indicada para bucles donde se conozca el

nmero de repeticiones que se van a hacer.


Como regla prctica podramos decir que las instrucciones while y do-while se
utilizan generalmente cuando no se conoce a priori el nmero de pasadas, y la
instruccin for se utiliza generalmente cuando s se conoce el nmero de pasadas.
Ejemplo de instruccin for en C++. Programa que muestra los nmeros del 1 al 10

3. Conclusin
C++ nos ofrece bastantes formas de programar. Dependiendo del tipo de programa que se
quiera hacer, tambin se tiene una estructura. El funcionamiento de cada una es diferente
y nos sirve de diferentes formas. Las estructuras selectivas nos hacen ms sencilla la
forma de programar, y sin un ciclo repetitivo tendramos que hacer muchsimas lneas de
instrucciones, aparte de eso un ciclo tambin nos ayuda a parar el programa cuando sea
necesario.

4. Bibliografas
http://ejercicioscpp.blogspot.mx/2012/11/estructuras-de-control-en-c.html
http://aprende-a-programar-ya.blogspot.mx/2011/08/estructuras-selectivas.html
http://aprende-a-programar-ya.blogspot.mx/2011/08/estructura-condicional-multiple.html

11 | P g i n a

Вам также может понравиться