Está en la página 1de 5

UNIVERSIDAD NACIONAL DE SAN AGUSTN

ESCUELA DE INGENIERA INDUSTRIAL

ALUMNO

CUI
DOCENTE

DIAZ SAYHUA AYRTON DARIO


:

20153324

EDWIN ESTREMADOYRO ESCOBAR

CURSO
NUMERICOS

PROGRAMACION Y METODOS

TEMA

SENTENCIA SWITCH

AREQUIPA PERU

SENTECIA SWITCH
CONCEPTO
La sentencia switch da una alternativa mucho ms refinada a la necesidad
de utilizar o implementar mltiples sentencias condicionales if cuando
deseamos que una determinada variable tome diferentes valores para
cada condicin.
Generalmente, la sentencia switch se implementa cuando es necesarario
la utilizacin de un men de opciones ya que el usuario deber escoger
una de las opciones, a esto me refiero cuando comento que la variable
puede tomar diferentes valores.

SINTXIS
La sintaxis o estructura general de la sentencia switch es la siguiente:
switch
{
case
sentencia_12;
...
case
sentencia_22;
...
...
...
...
case
sentencia_n;

(expresin)
cte_1:

sentencia_11;

cte_2:

sentencia_21;

cte_n:

sentencia_n;

...
}
Vale la pena resaltar que expresin es el nombre de la variable que se
utilizar como argumento de la sentencia switch.
Ahora bien, en la sintaxis de la sentencia switch que anteriormente
present se comprueba el valor que ingrese el usuario que es el que
tomar la variable expresin y lo compara con algunas de las etiquetas
que acompaen a cada case. En caso de no encontrar ninguna
coincidencia, el valor lo tomar como default.
Por otra parte, como antes lo mencion, si la sentencia switch no contiene
el valor ingresado por el usuario (que lo tomar la variable expresin o el
argumento), se puede crear un default (que es una palabra clave reservada
del lenguaje C), y mostrar un mensaje que diga, por ejemplo: opcin
errnea, intente de nuevo., as de esa manera, cuidamos nuestro
programa.
EJEMPLO
En tal sentido, se podra hacer un caso prctico. Creemos un programa
donde se muestre al usuario un men de opciones conformado por:
1.
Capital
2.
Capital
3.
10000+58000
4. Capital de Alemania

de
de
=

Argentina
Espaa
?

A su vez, si el usuario ingresa una opcin errnea que no se presenta en


el men de opciones, que se muestre un mensaje al mismo. Utilice la
sentencia switch.

EJERCICIO
#include<iostream>
#include<stdlib.h>
#include<math.h>
using namespace std;
int promedio,n1,n2,n3,cat;
char nomape[40],cur[20];
int main()
{
printf("\t\tingrese nombres y apellidos del alumno\n");
gets(nomape);
printf("\t\tingrese curso \n");
gets(cur);
printf("\t\telija una categoria \n");
printf("\t\t1 - A\t\t \n");
printf("\t\t2 - B\t\t \n");
printf("\t\t3 - C\t\t \n");
cin>>cat;
printf("\t\tingrese 3 notas \n");
scanf("%i""%i""%i",&n1,&n2,&n3);
system("cls");
if (n1>=0&&n2>=0&&n3>=0&&n1<=20&&n2<=20&&n3<=20)
promedio=(n1+n2+n3)/3 ;
else
cout<<"revise datos"<<endl;
if (promedio>0 && promedio<11)
cout<<"estado : desaprobado con "<<promedio<<endl;
else
if (promedio>=11 && promedio<=14)
cout<<"estado : aprobado con "<<promedio<<endl;
else
if (promedio>14 && promedio<17)

cout<<"estado: bueno con "<<promedio<<endl;


else

if(promedio>=17 && promedio<=20)


cout<< "estado: exelente con "<<promedio<<endl;
else
cout<< "revise datos porfavor"<<endl;

switch(cat)
{
case 1 :
if (n1>=0&&n2>=0&&n3>=0&&n1<=20&&n2<=20&&n3<=20&&promedio>=17
&& promedio<=20)
{promedio=(n1+n2+n3)/3 ;
printf("\t\tnombres y apellidos del alumno: %s\n",nomape);
printf("\t\tcurso: %s\n",cur);
printf("\t\tpromedio: %i\n",promedio);
printf("\t\tcategoria : A\n");
cout<<"apto"<<endl; }
else
if (n1<0||n2<0||n3<0||n1>20||n2>20||n3>20)
cout<<"revise datos"<<endl;
else
{ printf("\t\tnombres y apellidos del alumno: %s\n",nomape);
printf("\t\tcurso: %s\n",cur);
printf("\t\tpromedio: %i\n",promedio);
printf("\t\tcategoria : A\n");
cout<<"no apto"<<endl; }
break;
case 2 :
if (n1>=0&&n2>=0&&n3>=0&&n1<=20&&n2<=20&&n3<=20)
{promedio=(n1+n2+n3)/3 ;
printf("\t\tnombres y apellidos del alumno: %s\n",nomape);
printf("\t\tcurso: %s\n",cur);
printf("\t\tpromedio: %i\n",promedio);
printf("\t\tcategoria : B\n");
cout<<"no apto"<<endl; }
else
cout<<"revise datos"<<endl;
break;
case 3 :
if (n1>=0&&n2>=0&&n3>=0&&n1<=20&&n2<=20&&n3<=20)
{promedio=(n1+n2+n3)/3 ;
printf("\t\tnombres y apellidos del alumno: %s\n",nomape);
printf("\t\tcurso: %s\n",cur);
printf("\t\tpromedio: %i\n",promedio);
printf("\t\tcategoria : C\n");
cout<<"no apto"<<endl; }
else
cout<<"revise datos"<<endl;
break;
default:
printf ("revisar datos introducidos\n");
}
system("PAUSE");
}

También podría gustarte