Você está na página 1de 21

Ing. William J.

Len Velsquez
SESIN 05
1. Tcnica de solucin de
problemas en general:
anlisis, algoritmo y la
codificacin
2. Caractersticas del Lenguaje
C++
3. Estructuras secuenciales:
leer, asignacin y escribir
4. Estructuras selectivas simples:
if

20/04/2013
2
Ing. William J. Len Velsquez
20/04/2013
3
Entender el
anlisis

Utilizar las
herramientas
de algoritmo
Codificar las
instrucciones
ESTRUCTURAS SELECTIVAS MULTIPLES
Ing. William J. Len Velsquez
La estructura selectiva
mltiple permite bifurcar el
flujo de instrucciones a
diferentes direcciones
mediante la comparacin de
un valor con una lista de
constantes

20/04/2013 4
Al agregar un nuevo elemento
(bifurcacin mltiple) en los
programas,
En el anlisis tambin se utiliza en
algunas instrucciones la palabra Si
acompaada de una condicin
Instruccin1 Si x= valor 3
Instruccin2 Si a= valor 2
Instruccin2 Si a= valor 2
.
Ejemplo:
x y+50 Si A=1
x y+20 Si A=2
x y+10 Si A=3



20/04/2013
5
Tcnica de solucin de Problemas
Ing. William J. Len Velsquez
A A+20 Si B=2

A A+20 Si B=2

A travs de la comparacin
del valor de una variable
se agrega al algoritmo, la
capacidad de mltiples
decisiones.
Ser posible seleccionar
mltiples alternativas de
accin durante la
ejecucin del algoritmo.
20/04/2013
6
Tcnica de solucin de Problemas
Ing. William J. Len Velsquez
20/04/2013 7
V1 V2 V3 vi




Donde

id
Donde
id es el nombre
de una variable
de tipo ordinal
(entero o
carcter)

vi es una
constante de
tipo ordinal
20/04/2013 8




Donde

id
V1 V2 V3 V4 V5 vi
Donde
id es el nombre
de una variable
de tipo ordinal
(entero o
carcter)

vi es una
constante de
tipo ordinal
En Caso Id
Sea v1 : Instruccin [ Salir]
Sea v2 : Instruccin [ Salir]
Sea v3 : Instruccin [ Salir]

O si no :
Instruccin
Fin del en caso
20/04/2013 9




Donde

Donde
id es el nombre de
una variable de tipo
ordinal (entero o
carcter)

vi es una
constante de tipo
ordinal
Tiene por funcin transferir
el flujo de ejecucin por las
diferentes entradas que
proporciona la palabra
reservada case y a partir de
all ejecuta las instrucciones
hasta el final del bloque
salvo que encuentre la
instruccin de corte break

20/04/2013
10
Tcnica de solucin de Problemas
En C++
Ing. William J. Len Velsquez
switch (<variable>)
{
case <expresin_constante>:
[<instruccin>] [break;]
. . .
[default : [<instruccin>]]
}


20/04/2013 11
Cuando se usa la estructura
"switch" el control se
transfiere al punto
etiquetado con el "case" cuya
expresin constante coincida
con el valor de la variable
del "switch".
A partir de ese punto todas
las instrucciones sern
ejecutadas hasta el final del
"switch", es decir hasta llegar
al "}".
20/04/2013 12
cin>> N;
switch(N) {
case 1: cout<< A;
case 2: cout<< B;
case 3: cout<< C;
case 4: cout<< D;
case 5: cout<< E; ;
}
20/04/2013 13
Si N toma el valor de 1
Se mostrar ABCDE

Si N toma el valor de 3
Se mostrar CDE

Si N toma el valor de 5
Se mostrar E
cin>> N;
switch(N) {
case 1: cout<< A;
case 2: cout<< B;
case 3: cout<< C;
break;
case 4: cout<< D;
case 5: cout<< E;
}
20/04/2013 14
Si N toma el valor de 1
Se mostrar ABC

Si N toma el valor de 3
Se mostrar C

Si N toma el valor de 5
Se mostrar E
cin>> N;
switch(N) {
case 1: cout<< A;
case 2: cout<< B;
break;
case 3: cout<< C;
case 4: cout<< D;
break;
case 5: cout<< E;
}
20/04/2013 15
Si N toma el valor de 1
Se mostrar AB

Si N toma el valor de 3
Se mostrar CD

Si N toma el valor de 5
Se mostrar E

cin>> N;
switch(N) {
case 1: cout<< A; break;
case 2: cout<< B; break;
case 3: cout<< C; break;
case 4: cout<< D; break;
case 5: cout<< E;

20/04/2013 16
Si N toma el valor de 1
Se mostrar A

Si N toma el valor de 3
Se mostrar C

Si N toma el valor de 5
Se mostrar E
A partir de una nota vigesimal mostrar su
equivalente a caracteres

20/04/2013 17
NOTA EQUIVALENTE
VIGESIMAL
18- 20 A
15 - 17 B
11 - 14 C
6 10 D
0 - 5 E
20/04/2013 18
T
T=A Si 18<=N<=20
T=B Si 15<=N<=17
T=C Si 11<=N<=14
T=D Si 6 <=N<=10
T=E Si 0 <=N<=5

N
Cuando los si son consecutivos y evaluados con la misma variable
Se debe construir el algoritmo mediante una estructura selectica mltiple
20/04/2013 19
INICIO
Leer
N
N
18 -20
15 - 17 11 - 14 6 - 10 0 - 5
Escribir
T
FIN
TA TB
TC TD TE
#include <iostream>
using namespace std;
int main() {
int N; chart T;
cout << Ingrese una nota;
cin>>N;
switch (N) {
case 18:
case 19:
case 20: T=A; break;
case 15: case 16: case 17: T=B; break;
case 11: case 12: case 13: case 14: T=C; break;
case 6: case 7: case 8: case 9: case 10: T=D;
break;
case 0: case 1: case 2: case 3: case 4: case 5:
T=E;
}
cout<< T;
return 0;
}

20/04/2013 20
Wjleonv@yahoo.com
20/04/2013 21

Você também pode gostar