SlideShare una empresa de Scribd logo
1 de 25
FACULTAD DE INGENIERÍA INDUSTRIAL  INFORMÁTICA    Ing. Mónica Díaz Reátegui                                          CIP. 63424    monicdre@yahoo.com
CONTENIDO ESTRUCTURA  SELECTIVAS  MÚLTIPLES
ESTRUCTURA SELECTIVAS MÚLTIPLES ESTRUCTURA SELECTIVA   MÚLTIPLE En la solución de problemas existe casos en que más de dos  instrucciones tienen que ser ejecutadas en función al resultado de evaluar una condición en una estructura selectiva.  Una primera forma  de afrontarlo es a través de if anidados, pero existe otra forma de organizarlos en forma más ordenada. Esta estructura es:  En Caso …..  Sea……  Hacer  
ESTRUCTURA SELECTIVAS MÚLTIPLES En C++  la forma de afrontar esta estructura tiene una variación con respecto a las estructuras en otros lenguajes.    En C ++ la estructura se aborda  evaluando cada caso con un valor ordinal es decir un carácter o entero.  
ESTRUCTURA SELECTIVAS MÚLTIPLES Representación de la estructuras En caso  con las diferentes herramientas para construir algoritmos:   En un diagrama de flujo: Donde: id es el nombre de una variable de tipo ordinal (entero o carácter) vi	es una constante de tipo ordinal.
ESTRUCTURA SELECTIVAS MÚLTIPLES En una carta N-S
ESTRUCTURA SELECTIVAS MÚLTIPLES En Pseudo código   En Caso N   Sea   1   : Instrucción    [ Salir] Sea   2    : Instrucción  [ Salir] Sea  3     : Instrucción   [ Salir]     O si no :   Instrucción   Fin del En caso 
ESTRUCTURA SELECTIVAS MÚLTIPLES Estructura "switch"  La estructura  switch es una estructura de control selectiva múltiple que tienes por función transferir el flujo de ejecución 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 instrucción de corte break.
ESTRUCTURA SELECTIVAS MÚLTIPLES Sintaxis: Cuando se usa la estructura "switch" el control se transfiere al punto etiquetado con el "case" cuya expresión constante coincida con el valor de la variable del "switch". A partir de ese punto todas las instrucciones serán ejecutadas hasta el final del "switch", es decir hasta llegar al "}".
ESTRUCTURA SELECTIVAS MÚLTIPLES Esto es así porque las etiquetas sólo marcan los puntos de entrada después de una ruptura de la secuencia de ejecución, pero no marcan las salidas.  Esta característica nos permite ejecutar las mismas instrucciones para varias etiquetas distintas, y se puede eludir usando la sentencia de ruptura "break" al final de las sentencias incluidas en cada "case".  Si no se satisface ningún "case", el control parará a la siguiente sentencia después de la etiqueta "default". Esta etiqueta es opcional y si no aparece se abandonará el "switch".
ESTRUCTURA SELECTIVAS MÚLTIPLES COMPORTAMIENTO DEL switch CON EL break El  siguiente fragmento de programa esta  presentado de cuatro  formas diferentes :
ESTRUCTURA SELECTIVAS MÚLTIPLES
ESTRUCTURA SELECTIVAS MÚLTIPLES
ESTRUCTURA SELECTIVAS MÚLTIPLES Ejemplo 1 A partir de una nota vigesimal mostrar su equivalente a caracteres
ESTRUCTURA SELECTIVAS MÚLTIPLES Análisis
ESTRUCTURA SELECTIVAS MÚLTIPLES Algoritmo :  Diagrama de flujo
ESTRUCTURA SELECTIVAS MÚLTIPLES  En código C++  #include <iostream> using namespace std; int main() { int N; cout << “Ingreseuna nota”; cin>>N,T; 	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; }
ESTRUCTURA SELECTIVAS MÚLTIPLES Ejemplo 2   En este ejemplo letra es una variable de tipo "char". Si el valor de entrada en el "switch" corresponde a una vocal, Se mostrará el mensaje “Es vocal abierta”,o  “Es vocal cerrada”,  en caso contrario, saldrá un mensaje “Es consonante”.
ESTRUCTURA SELECTIVAS MÚLTIPLES Algoritmo: Cartas N-S
ESTRUCTURA SELECTIVAS MÚLTIPLES En código C++  #include <iostream> using namespace std; int main() { int N; cout << “Ingreseuna nota”; cin>>N; 	switch(letra) 	{ 	   case 'a': case ‘A’: 	    case 'e': case ‘E’:	    case 'o': case ‘O’:    cout<< “Es vocal abierta”;  break;	       case 'i':  case ‘I’:	    case 'u': case ‘U’:     cout<< “Es vocal  cerrada”; break; default:   cout<< “es una consonante”;         }   return 0; }
ESTRUCTURA SELECTIVAS MÚLTIPLES El ejemplo ilustra el uso del "break", si letra es 'a', se cumple el primer "case", y la ejecución continúa en la siguiente sentencia, ignorando el resto de los "case" hasta el "break". Ejemplo 3 En este ejemplo num es un entero y va ha mostrar el texto correspondiente al día de la semana, debe validar los días válidos.  
ESTRUCTURA SELECTIVAS MÚLTIPLES Algoritmo: Pseudocódigo  Inicio Leer num Si (num>=1  Y  num<=7)   		En caso (num) 			Sea  1:  Escribir  “Domingo” , Salir 			Sea  2:  Escribir  “Lunes” , Salir 			Sea  3:  Escribir  “Martes” , Salir 			Sea  4:  Escribir  “Miércoles” , Salir 			Sea  5:  Escribir  “Jueves” , Salir 			Sea  6:  Escribir  “Viernes” , Salir 			Sea  7:  Escribir  “Sábado” ,  		Fin del en caso 	O si no 		Escribir “No es un número válido” 	Fin del si  Fin
ESTRUCTURA SELECTIVAS MÚLTIPLES En código C++  #include <iostream> using namespace std; intmain() { int N; cout << “Ingrese una nota”; cin>>num;
ESTRUCTURA SELECTIVAS MÚLTIPLES En código C++ if(num>=1 && num<=7) switch(num) 	          {     case 1:      cout<< “Domingo”;   break;  case 2:      cout<< “Lunes”;   break;  case 3:      cout<< “Martes”;   break; 	 case 4:      cout<< “Miercoles”; break;  case 5:      cout<< “Jueves”;   break;  case 6:      cout<< “Viernes”;   break;  case 7:      cout<< “Sabado”;    }     else cout<< “No es un número válido”; return 0; 
ESTRUCTURA SELECTIVAS MÚLTIPLES #include <iostream> #include <stdlib.h> using  namespace std; int main() { float CON, DES=0,MON;       cout << "Ingreseconsumo"; cin>> CON; if ( CON>50)          DES=CON*0.05;       MON=CON-DES; cout<<"El monto a pagar es "<<MON<<endl;   system("PAUSE");       return 0; }

Más contenido relacionado

La actualidad más candente

Lenguajesdeprogramacion c nivel1-unidad3
Lenguajesdeprogramacion c nivel1-unidad3Lenguajesdeprogramacion c nivel1-unidad3
Lenguajesdeprogramacion c nivel1-unidad3
camnav
 
Introducción A Las Estructuras De Seleccion En C
Introducción A Las Estructuras De Seleccion En CIntroducción A Las Estructuras De Seleccion En C
Introducción A Las Estructuras De Seleccion En C
painni
 
Ejemplo C++
Ejemplo C++Ejemplo C++
Ejemplo C++
David
 
Estructuras de seleccion
Estructuras de seleccionEstructuras de seleccion
Estructuras de seleccion
Clariza
 
Estructuras de repetición en programacion
Estructuras de repetición en programacionEstructuras de repetición en programacion
Estructuras de repetición en programacion
SERCOMPFAST
 
Capitulo 09 Estructura De Un Algoritmo
Capitulo 09 Estructura De Un AlgoritmoCapitulo 09 Estructura De Un Algoritmo
Capitulo 09 Estructura De Un Algoritmo
SENA
 
Pseudocodigo con ejemplos
Pseudocodigo con ejemplosPseudocodigo con ejemplos
Pseudocodigo con ejemplos
isabel-fcsyp
 

La actualidad más candente (20)

Chuleta de lenguaje C para principiantes
Chuleta de lenguaje C para principiantesChuleta de lenguaje C para principiantes
Chuleta de lenguaje C para principiantes
 
Condiciones
CondicionesCondiciones
Condiciones
 
Lenguajesdeprogramacion c nivel1-unidad3
Lenguajesdeprogramacion c nivel1-unidad3Lenguajesdeprogramacion c nivel1-unidad3
Lenguajesdeprogramacion c nivel1-unidad3
 
Introducción A Las Estructuras De Seleccion En C
Introducción A Las Estructuras De Seleccion En CIntroducción A Las Estructuras De Seleccion En C
Introducción A Las Estructuras De Seleccion En C
 
Clase 6
Clase 6Clase 6
Clase 6
 
Tutorial sencillo manejo de pseint y free dfd
Tutorial sencillo manejo de pseint y free dfdTutorial sencillo manejo de pseint y free dfd
Tutorial sencillo manejo de pseint y free dfd
 
Ejemplo C++
Ejemplo C++Ejemplo C++
Ejemplo C++
 
Pseudocódigo
PseudocódigoPseudocódigo
Pseudocódigo
 
Estructuras de seleccion
Estructuras de seleccionEstructuras de seleccion
Estructuras de seleccion
 
Estructuras de repetición en programacion
Estructuras de repetición en programacionEstructuras de repetición en programacion
Estructuras de repetición en programacion
 
Pseudocódigo
PseudocódigoPseudocódigo
Pseudocódigo
 
la instrucción if , Leer cadenas, caracteres
 la instrucción if , Leer cadenas, caracteres la instrucción if , Leer cadenas, caracteres
la instrucción if , Leer cadenas, caracteres
 
Diagramas De Flujo
Diagramas De FlujoDiagramas De Flujo
Diagramas De Flujo
 
Estructuras de control
Estructuras de controlEstructuras de control
Estructuras de control
 
Pseudocodigo
PseudocodigoPseudocodigo
Pseudocodigo
 
Capitulo 09 Estructura De Un Algoritmo
Capitulo 09 Estructura De Un AlgoritmoCapitulo 09 Estructura De Un Algoritmo
Capitulo 09 Estructura De Un Algoritmo
 
Pseudocodigo con ejemplos
Pseudocodigo con ejemplosPseudocodigo con ejemplos
Pseudocodigo con ejemplos
 
Java - Sintaxis Básica 2015
Java - Sintaxis Básica 2015Java - Sintaxis Básica 2015
Java - Sintaxis Básica 2015
 
Llamadas a subalgoritmos
Llamadas a subalgoritmosLlamadas a subalgoritmos
Llamadas a subalgoritmos
 
Clase lenguaje c
Clase lenguaje c Clase lenguaje c
Clase lenguaje c
 

Destacado (9)

Unmsm01 2008
Unmsm01 2008Unmsm01 2008
Unmsm01 2008
 
Cap02
Cap02Cap02
Cap02
 
Unmsm02 2008
Unmsm02 2008Unmsm02 2008
Unmsm02 2008
 
Unmsm03 2008
Unmsm03 2008Unmsm03 2008
Unmsm03 2008
 
Cap1y2.Textoguiapdf
Cap1y2.TextoguiapdfCap1y2.Textoguiapdf
Cap1y2.Textoguiapdf
 
Prueba de Admisión UN 9 mayo 2009
Prueba de Admisión UN 9 mayo 2009Prueba de Admisión UN 9 mayo 2009
Prueba de Admisión UN 9 mayo 2009
 
Unmsm04 2008
Unmsm04 2008Unmsm04 2008
Unmsm04 2008
 
Capítulo 3 Qbasic sentencias de control repetitivas
Capítulo 3 Qbasic sentencias de control repetitivasCapítulo 3 Qbasic sentencias de control repetitivas
Capítulo 3 Qbasic sentencias de control repetitivas
 
Cap03
Cap03Cap03
Cap03
 

Similar a Unmsm05 2008 (20)

Apunfun2
Apunfun2Apunfun2
Apunfun2
 
Tipos de datos en C
Tipos de datos en CTipos de datos en C
Tipos de datos en C
 
Clase lenguaje c xxxxxx
Clase lenguaje c xxxxxxClase lenguaje c xxxxxx
Clase lenguaje c xxxxxx
 
Clase lenguaje c xxxxxx
Clase lenguaje c xxxxxxClase lenguaje c xxxxxx
Clase lenguaje c xxxxxx
 
Lenguaje c++
Lenguaje c++Lenguaje c++
Lenguaje c++
 
Elementos básicos de c++
Elementos básicos de c++Elementos básicos de c++
Elementos básicos de c++
 
Elementos básicos de c++
Elementos básicos de c++Elementos básicos de c++
Elementos básicos de c++
 
Lenguaje c++
Lenguaje c++Lenguaje c++
Lenguaje c++
 
Diapositivas del resumen y ejercicios(finalizada)
Diapositivas del resumen y ejercicios(finalizada)Diapositivas del resumen y ejercicios(finalizada)
Diapositivas del resumen y ejercicios(finalizada)
 
Presentación de programación (conceptos y ejercicios)
Presentación de programación (conceptos y ejercicios)Presentación de programación (conceptos y ejercicios)
Presentación de programación (conceptos y ejercicios)
 
Diapositivas del resumen y ejercicios(finalizada) (1)
Diapositivas del resumen y ejercicios(finalizada) (1)Diapositivas del resumen y ejercicios(finalizada) (1)
Diapositivas del resumen y ejercicios(finalizada) (1)
 
Presentación1
Presentación1Presentación1
Presentación1
 
Presentación1
Presentación1Presentación1
Presentación1
 
Presentación1
Presentación1Presentación1
Presentación1
 
Lenguajes de programacion c
Lenguajes de programacion c Lenguajes de programacion c
Lenguajes de programacion c
 
ESTRUCTURAS DE SELECCIÓN SENTENCIAS IF Y SWITCH EN C++
ESTRUCTURAS DE SELECCIÓN SENTENCIAS IF Y SWITCH EN C++ESTRUCTURAS DE SELECCIÓN SENTENCIAS IF Y SWITCH EN C++
ESTRUCTURAS DE SELECCIÓN SENTENCIAS IF Y SWITCH EN C++
 
Introduccion a c++
Introduccion a c++Introduccion a c++
Introduccion a c++
 
Condiciones
CondicionesCondiciones
Condiciones
 
Unidad3
Unidad3Unidad3
Unidad3
 
Lenguaje de programacion C++ 3
Lenguaje de programacion C++ 3Lenguaje de programacion C++ 3
Lenguaje de programacion C++ 3
 

Unmsm05 2008

  • 1. FACULTAD DE INGENIERÍA INDUSTRIAL INFORMÁTICA Ing. Mónica Díaz Reátegui CIP. 63424 monicdre@yahoo.com
  • 2. CONTENIDO ESTRUCTURA SELECTIVAS MÚLTIPLES
  • 3. ESTRUCTURA SELECTIVAS MÚLTIPLES ESTRUCTURA SELECTIVA MÚLTIPLE En la solución de problemas existe casos en que más de dos instrucciones tienen que ser ejecutadas en función al resultado de evaluar una condición en una estructura selectiva. Una primera forma de afrontarlo es a través de if anidados, pero existe otra forma de organizarlos en forma más ordenada. Esta estructura es: En Caso ….. Sea…… Hacer  
  • 4. ESTRUCTURA SELECTIVAS MÚLTIPLES En C++ la forma de afrontar esta estructura tiene una variación con respecto a las estructuras en otros lenguajes.   En C ++ la estructura se aborda evaluando cada caso con un valor ordinal es decir un carácter o entero.  
  • 5. ESTRUCTURA SELECTIVAS MÚLTIPLES Representación de la estructuras En caso con las diferentes herramientas para construir algoritmos:   En un diagrama de flujo: Donde: id es el nombre de una variable de tipo ordinal (entero o carácter) vi es una constante de tipo ordinal.
  • 7. ESTRUCTURA SELECTIVAS MÚLTIPLES En Pseudo código   En Caso N   Sea 1 : Instrucción [ Salir] Sea 2 : Instrucción [ Salir] Sea 3 : Instrucción [ Salir]     O si no : Instrucción   Fin del En caso 
  • 8. ESTRUCTURA SELECTIVAS MÚLTIPLES Estructura "switch" La estructura switch es una estructura de control selectiva múltiple que tienes por función transferir el flujo de ejecución 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 instrucción de corte break.
  • 9. ESTRUCTURA SELECTIVAS MÚLTIPLES Sintaxis: Cuando se usa la estructura "switch" el control se transfiere al punto etiquetado con el "case" cuya expresión constante coincida con el valor de la variable del "switch". A partir de ese punto todas las instrucciones serán ejecutadas hasta el final del "switch", es decir hasta llegar al "}".
  • 10. ESTRUCTURA SELECTIVAS MÚLTIPLES Esto es así porque las etiquetas sólo marcan los puntos de entrada después de una ruptura de la secuencia de ejecución, pero no marcan las salidas. Esta característica nos permite ejecutar las mismas instrucciones para varias etiquetas distintas, y se puede eludir usando la sentencia de ruptura "break" al final de las sentencias incluidas en cada "case". Si no se satisface ningún "case", el control parará a la siguiente sentencia después de la etiqueta "default". Esta etiqueta es opcional y si no aparece se abandonará el "switch".
  • 11. ESTRUCTURA SELECTIVAS MÚLTIPLES COMPORTAMIENTO DEL switch CON EL break El siguiente fragmento de programa esta presentado de cuatro formas diferentes :
  • 14. ESTRUCTURA SELECTIVAS MÚLTIPLES Ejemplo 1 A partir de una nota vigesimal mostrar su equivalente a caracteres
  • 16. ESTRUCTURA SELECTIVAS MÚLTIPLES Algoritmo : Diagrama de flujo
  • 17. ESTRUCTURA SELECTIVAS MÚLTIPLES  En código C++  #include <iostream> using namespace std; int main() { int N; cout << “Ingreseuna nota”; cin>>N,T; 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; }
  • 18. ESTRUCTURA SELECTIVAS MÚLTIPLES Ejemplo 2   En este ejemplo letra es una variable de tipo "char". Si el valor de entrada en el "switch" corresponde a una vocal, Se mostrará el mensaje “Es vocal abierta”,o “Es vocal cerrada”, en caso contrario, saldrá un mensaje “Es consonante”.
  • 19. ESTRUCTURA SELECTIVAS MÚLTIPLES Algoritmo: Cartas N-S
  • 20. ESTRUCTURA SELECTIVAS MÚLTIPLES En código C++  #include <iostream> using namespace std; int main() { int N; cout << “Ingreseuna nota”; cin>>N; switch(letra) { case 'a': case ‘A’: case 'e': case ‘E’: case 'o': case ‘O’: cout<< “Es vocal abierta”; break; case 'i': case ‘I’: case 'u': case ‘U’: cout<< “Es vocal cerrada”; break; default: cout<< “es una consonante”; } return 0; }
  • 21. ESTRUCTURA SELECTIVAS MÚLTIPLES El ejemplo ilustra el uso del "break", si letra es 'a', se cumple el primer "case", y la ejecución continúa en la siguiente sentencia, ignorando el resto de los "case" hasta el "break". Ejemplo 3 En este ejemplo num es un entero y va ha mostrar el texto correspondiente al día de la semana, debe validar los días válidos.  
  • 22. ESTRUCTURA SELECTIVAS MÚLTIPLES Algoritmo: Pseudocódigo  Inicio Leer num Si (num>=1 Y num<=7)   En caso (num) Sea 1: Escribir “Domingo” , Salir Sea 2: Escribir “Lunes” , Salir Sea 3: Escribir “Martes” , Salir Sea 4: Escribir “Miércoles” , Salir Sea 5: Escribir “Jueves” , Salir Sea 6: Escribir “Viernes” , Salir Sea 7: Escribir “Sábado” , Fin del en caso O si no Escribir “No es un número válido” Fin del si  Fin
  • 23. ESTRUCTURA SELECTIVAS MÚLTIPLES En código C++  #include <iostream> using namespace std; intmain() { int N; cout << “Ingrese una nota”; cin>>num;
  • 24. ESTRUCTURA SELECTIVAS MÚLTIPLES En código C++ if(num>=1 && num<=7) switch(num) { case 1: cout<< “Domingo”; break; case 2: cout<< “Lunes”; break; case 3: cout<< “Martes”; break; case 4: cout<< “Miercoles”; break; case 5: cout<< “Jueves”; break; case 6: cout<< “Viernes”; break; case 7: cout<< “Sabado”; } else cout<< “No es un número válido”; return 0; 
  • 25. ESTRUCTURA SELECTIVAS MÚLTIPLES #include <iostream> #include <stdlib.h> using namespace std; int main() { float CON, DES=0,MON; cout << "Ingreseconsumo"; cin>> CON; if ( CON>50) DES=CON*0.05; MON=CON-DES; cout<<"El monto a pagar es "<<MON<<endl;   system("PAUSE"); return 0; }