Documentos de Académico
Documentos de Profesional
Documentos de Cultura
1tema Switch
1tema Switch
Introducción
La estructura selectiva switch permite que el flujo del diagrama se divida por varias ramas
en el punto de la toma de decisión. La elección del camino a seguir depende del contenido
de la variable conocida como selector, la cual puede tomar valores de un conjunto
previamente establecido. El camino elegido, entonces, dependerá del valor que tome el
selector. Así, si el selector toma el valor 1 ejecutará la acción 1; si toma el valor 2, se
ejecutará la acción 2, y si toma el valor N, se realizará la acción N, es importante señalar
que la estructura switch es muy flexible, ya que si el selector tomara un valor distinto a los
comprendidos entre 1 y N, entonces deberá salir por el default.
valor1 default
proceso selector proceso
Diagrama de flujo:
Inicio
numero
“Imprime el equivalente
en romano ”
“Introducir un
numero entero”
numero
2 5
“ II ” “V”
3 4
“ III” “ IV ”
Fin
Codificación
#include <stdio.h>
void main()
{
int numero;
clrscr();
printf("\nImprime un numero romano del 1 al 5");
printf("\nIntroducir un numero entero: ");
scanf("%d",&numero);
switch(numero)
{
case 1:
printf("\nI");
break;
case 2:
printf("\nII");
break;
case 3:
printf("\nIII");
break;
case 4:
printf("\nIV");
break;
case 5:
printf("\nV");
break;
default:
printf("\nSolo numeros del 1 al 5");
}
printf("\nOprimir cualquier tecla para finalizar"); getche();
}
Ejemplo 2
La compañía de la luz desea generar el recibo de un cliente, el cual puede habitar en una
de las cuatro zonas en que se divide el área metropolitana. Desarrollar un diagrama de flujo,
en el cual se introduzca la siguiente información:
Consumo de kilowatts.
Zona Tarifa/kw
1.- Monterrey $0.85
2.- San Pedro $0.90
3.- San Nicolás $0.87
4.- Guadalupe $0.82
Diagrama de flujo:
Inicio
“Imprime el recibo de la
luz de un cliente”
“Introducir nombre
del cliente”
nom
“Kilowatts
consumidos”
kw
“Zonas
1.- Monterrey
2.- San Pedro
3.- San Nicolas
4.- Guadalupe”
“Seleccionar
número de zona”
zona
1
1
2
pago=kw*0.90
3 4
pago=kw*0.82
pago=kw*0.87
zona > 0
&&
zona < 5
V
F
nom, pago
Fin
Codificación
#include <stdio.h>
main()
int kw,zona;
float pago;
char nom[30];
printf("Recibo de la luz de un cliente utilizando SWITCH");
scanf("%[^\n]",nom);
scanf("%d",&kw);
printf("\nZONAS");
scanf("%d",&zona);
switch(zona)
case 1:
pago=kw*0.85;
break;
case 2:
pago=kw*0.90;
break;
case 3:
pago=kw*0.87;
break;
case 4:
pago=kw*0.82;
break;
default:
printf("\nCOMPANIA DE LA LUZ");
printf("\nNombre: %s",nom);
printf("\nPago: %f",pago);