Fecha de efectividad: UNIVERSIDAD AUTÓNOMA DE BAJA CALIFORNIA FACULTAD DE INGENIERÍA (UNIDAD MEXICALI) DOCUMENTO DEL SISTEMA DE CALIDAD Formato para Prácticas de Laboratorio PROGRAMA EDUCATIVO PLAN DE ESTUDIO CLAVE DE UNIDAD DE APRENDIZAJE NOMBRE DE LA UNIDAD DE APRENDIZAJE TRONCO COMÚN 2009-2 11214 PROGRAMACIÓN PRÁCTICA No. LABORATORIO DE CIENCIAS BÁSICAS (PROGRAMACIÓN) DURACIÓN (HORAS) 8 NOMBRE DE LA PRÁCTICA SWITCH CASE 2 1. INTRODUCCIÓN La estructura de decisión múltiple switch-case, evalúa una expresión que podrá tomar n valores distintos de tipo entero o caracter, 1, 2, 3, 4,…n y a, b, c, d…z. Según se elija uno de estos valores en la condición, se realizará una de las n acciones, o lo es que igual, el flujo del programa seguirá un determinado camino entre los n posibles. 2. OBJETIVO (COMPETENCIA) Elaborar programas de selección múltiple, para la solución de problemas reales en el área de ingeniería. Con disposición para trabajar en forma individual y responsabilidad en el uso del equipo cómputo del laboratorio. 3. FUNDAMENTO Con frecuencia, cuando se trabaja con estructuras de decisión, es necesario que existan más de dos elecciones posibles para la resolución de un problema. Por ejemplo, cuando en función de los meses del año se desea saber el signo zodiacal de una persona. En estos casos, es posible resolver ese tipo de problemas con estructuras alternativas simples o dobles (if, if-else); sin embargo, si el número de alternativas es grande puede plantear problemas de escritura del programa o de su legibilidad. Para esos casos, en los que existen múltiples alternativas, se recomienda el uso de la estructura de decisión switch-case. Switch case switch evalúa una expresión, la cual es llamada selector, y según sea su valor, se ejecuta un determinado case con un conjunto de acciones. También, se puede encontrar acompañado de la Formuló Revisó Autorizó M.C. Araceli Celina Justo López M.C. Gloria Etelbina Chávez Valenzuela M.C. Araceli Celina Justo López Nombre y Firma del Responsable de Programa Educativo Dr. Daniel Hernández Balbuena Nombre y Firma del Maestro Nombre y Firma del Director / Representante de la Dirección Código: GC-N4-017 Revisión: 4 Página 1 de 8 Fecha de efectividad: ______________________ UNIVERSIDAD AUTÓNOMA DE BAJA CALIFORNIA FACULTAD DE INGENIERÍA (UNIDAD MEXICALI) DOCUMENTO DEL SISTEMA DE CALIDAD Formatos para prácticas de laboratorio instrucción break y la instrucción default. break es utilizado para indicar dónde termina el conjunto de acciones de un determinado case. La instrucción default es utilizada cuando la expresión que se evalúa no se encuentra considerada en ninguno de los case del switch, por lo que el programa ejecutará las acciones que se indiquen dentro de la instrucción default. el formato básico para el uso de switch case es el siguiente: //Cuando la expresión es de tipo entero //Cuando la expresión es de tipo carácter switch(expresión) { case 1: sentencia1; sentencia2; sentencia3; sentencian; break; switch(expresión) { case 'a': sentencia1; sentencia2; sentencia3; sentencian; break; case 2: case 'b': sentencia1; sentencia2; sentencia3; sentencian; sentencia1; sentencia2; sentencia3; sentencian; break; break; case n: case 'z': sentencia1; sentencia2; sentencia3; sentencian; sentencia1; sentencia2; sentencia3; sentencian; break; break; default: default: printf("No existe el valor indicado"); } printf("No existe el valor indicado"); } El diagrama de flujo para la instrucción switch-case se presenta a continuación: Código: GC-N4-017 Revisión: 4 Página 2 de 8 Fecha de efectividad: ______________________ UNIVERSIDAD AUTÓNOMA DE BAJA CALIFORNIA FACULTAD DE INGENIERÍA (UNIDAD MEXICALI) DOCUMENTO DEL SISTEMA DE CALIDAD Formatos para prácticas de laboratorio Ejemplos del uso de switch-case #include <stdio.h> void main(){ int selector, num1, num2, operacion; printf("Ingrese el primer número"); scanf("%d", &num1); printf("Ingrese el segundo número"); scanf("%d", &num2); printf("Operación a realizar"); printf("\n1… Sumar"); printf("\n2…Multiplicar"); printf("\n3…Restar"); scanf("%d", &selector); //Selector tipo entero switch(selector){ case 1: operacion=num1+num2; break; case 2: operacion=num1*num2; break; case 3: operacion=num1-num2; break; default: printf("No existe la opción seleccionada"); }//fin del switch Código: GC-N4-017 Revisión: 4 Página 3 de 8 Fecha de efectividad: ______________________ UNIVERSIDAD AUTÓNOMA DE BAJA CALIFORNIA FACULTAD DE INGENIERÍA (UNIDAD MEXICALI) DOCUMENTO DEL SISTEMA DE CALIDAD Formatos para prácticas de laboratorio printf("El resultado es %d", operacion); } #include <stdio.h> void main(){ int num1, num2, operacion; char selector; printf("Ingrese el primer número"); scanf("%d", &num1); printf("Ingrese el segundo número"); scanf("%d", &num2); printf("Operación a realizar"); printf("\n+… Sumar"); printf("\nX…Multiplicar"); printf("\n-…Restar"); scanf("%c", &selector); //Selector tipo caracter switch(selector){ case '+': operacion=num1+num2; break; case 'x': operacion=num1*num2; break; case '-': operacion=num1-num2; break; default: printf("No existe la opción seleccionada"); }//fin del switch printf("El resultado es %d", operacion); } • Switch anidado Este se presenta cuando dentro de una sentencia switch existe otra sentencia switch. De acuerdo al ANSI C, el número de anidaciones que permite un switch es de 15. Sintaxis del switch anidado switch (selector){ Código: GC-N4-017 Revisión: 4 Página 4 de 8 Fecha de efectividad: ______________________ UNIVERSIDAD AUTÓNOMA DE BAJA CALIFORNIA FACULTAD DE INGENIERÍA (UNIDAD MEXICALI) DOCUMENTO DEL SISTEMA DE CALIDAD Formatos para prácticas de laboratorio case 1: switch(selector2){ case 1: acciones; break; case 2: acciones; break; case n: acciones; break; } break; case n: acciones; default: acción; } 4. PROCEDIMIENTO (DESCRIPCIÓN) A) EQUIPO NECESARIO 1. Computadora con Visual Studio instalado 2. Unidad de almacenamiento MATERIAL DE APOYO Práctica 8 B) DESARROLLO DE LA PRÁCTICA Las prácticas están clasificadas por días de la semana. El alumno, realizará los ejercicios que le corresponden de acuerdo al día de laboratorio o a criterio del maestro. Martes y Miércoles 1. Realizar un programa que permita contestar las siguientes adivinanzas a. Si lo ves, es invierno; si lo guardas, pereces; cada día lo tomas mas de mil veces. Posibles respuestas: El silencio, el aliento, el frío b. Te dice lo que está bien, te dice lo que está mal y no es ninguna persona, ¿de quién se puede tratar? Posibles respuestas: La imaginación, , la verdad, la conciencia c. Es, cuando no es, y no es, cuando es. ¿Qué es? Posibles respuestas: La verdad, la mentira, la realidad. d. Es un momento muy importante; cuentas tu edad desde ese instante. Código: GC-N4-017 Revisión: 4 Página 5 de 8 Fecha de efectividad: ______________________ UNIVERSIDAD AUTÓNOMA DE BAJA CALIFORNIA FACULTAD DE INGENIERÍA (UNIDAD MEXICALI) DOCUMENTO DEL SISTEMA DE CALIDAD Formatos para prácticas de laboratorio Posibles respuestas: El nacimiento, tu cumpleaños, tus primeros pasos. e. ¿Sabes qué cosa será, que cuando hablas lo rompes y cuando callas está? Posibles respuestas: El ruido, la lluvia, el silencio. Mostrar al usuario las adivinanzas y pedirle que indique una opción de respuesta, indicar si es correcta o no. Si contesta correctamente 4 o 5 adivinanzas, indicar que gano el juego, en caso contrario indicarle que debe seguir intentando. Utilizar switch case para cada adivinanza. 2. La empresa "VIAJES INTERNACIONALES", ofrece los siguientes paquetes vacacionales a sus clientes: a. Paquete básico, incluye avión y hotel, costo por persona, 8500 pesos por 5 días, por día extra se cobran 500 pesos. b. Paquete Intermedio, incluye avión, hotel y comidas. Costo por persona10700 pesos, por día extra se cobran 800 pesos c. Paquete avanzado, incluye avión, hotel, comidas y recorridos guiados a las zonas turísticas, 13600 pesos, por día extra se cobra 1200 pesos. Todos los paquetes incluyen viaje redondo y no se manejan paquetes de viaje para menos de 5 días. Realizar un programa donde el usuario indique el plan vacacional que desea adquirir, se le pregunte el presupuesto con el que cuenta para viajar, los días que disfrutará del viaje y el número de personas que lo acompañan. El programa deberá mostrar en pantalla el costo de viaje así como un mensaje indicando si con el presupuesto del cliente es suficiente para viajar o en su defecto cuanto le hace falta para cubrir el viaje. Utilizar switch case para el menú de paquetes. Utilizar if y funciones donde considere necesario. Utilizar if y funciones donde considere necesario. Código: GC-N4-017 Revisión: 4 Página 6 de 8 Fecha de efectividad: ______________________ UNIVERSIDAD AUTÓNOMA DE BAJA CALIFORNIA FACULTAD DE INGENIERÍA (UNIDAD MEXICALI) DOCUMENTO DEL SISTEMA DE CALIDAD Formatos para prácticas de laboratorio Jueves y Viernes 1. Un agente de tránsito requiere un sistema para controlar las multas que otorga a los conductores. El puede generar los siguientes tipos de multas: a. No usar cinturón de seguridad y/ utilizar aparatos de telecomunicación. Multa: 5 salarios mínimos $350.5 b. Obstruir la circulación en la vía pública Multa: 10 días de salario mínimo $701 c. Estacionarse en lugares prohibidos. Multa: 15 días de salario mínimo y remisión del auto al depósito $1051.00 d. Dar vuelta en U en lugares donde no está permitido Multa: 20 días de salario mínimo $1402 Realizar un sistema que permita generar la orden de la multa de tránsito, indicando el nombre del conductor, las matrícula del vehículo, el año y marca del vehículo así como la Multa a cubrir. 2. El centro bancario "SANTACRUZ" ofrece las siguientes formas para adquirir un crédito: a. CREDITO CORTO. Cuando el crédito se debe cubrir en 12 meses o menos, con un tasa de interés del 5% mensual b. CREDITO LARGO. Cuando el crédito se debe cubrir en 24 meses o más de 12 meses con una tasa de interés del 4% mensual "SANTACRUZ" no ofrece créditos mayores a 24 meses a menos que el cliente compruebe un salario mensual neto de 20,000 pesos y en esos casos la tasa de interés es del 3%. Realizar un programa que permita solicitar al cliente el tipo de crédito. También solicitar el monto del crédito, el sueldo neto mensual y el número de mensualidades en que cubrirá su crédito. El programa deberá mostrar en pantalla los siguientes datos: Mensualidad sin interés. Monto del interés mensual. Mensualidad con interés. Total de intereses a pagar. Total a pagar por el crédito ya con intereses. Si el cliente no califica para el crédito indicarlo. Sí el cliente elige un crédito que no corresponde al número de meses en que desea pagar la mensualidad indicar un mensaje de error. Utilizar switch case para el menú de créditos. Código: GC-N4-017 Revisión: 4 Página 7 de 8 Fecha de efectividad: ______________________ UNIVERSIDAD AUTÓNOMA DE BAJA CALIFORNIA FACULTAD DE INGENIERÍA (UNIDAD MEXICALI) DOCUMENTO DEL SISTEMA DE CALIDAD Formatos para prácticas de laboratorio C) CÁLCULOS (SI APLICA) Y REPORTE El alumno deberá depurar sus programas para eliminar los errores de compilación y ejecutar los programas con diversos valores, de tal forma que valide los resultados esperados. 4. RESULTADOS Y CONCLUSIONES El maestro revisará los programas proporcionando diferentes valores para determinar si el programa se ejecuta correctamente. 5. ANEXOS Ninguno. 6. REFERENCIAS 1. Luis Joyanes Aguilar "Fundamentos de programación: Algoritmos, estructuras de datos y objetos" McGraw-Hill, 4ta edición 2008. 1. Luis Joyanes Aguilar, Ignacio Zahonero Programación en C: metodología, algoritmos y estructura de datos. McGraw-Hill Interamericana de España. 2006. Código: GC-N4-017 Revisión: 4 Página 8 de 8
© Copyright 2024