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 CARRERA PLAN DE ESTUDIO CLAVE ASIGNATURA NOMBRE DE LA ASIGNATURA LSC 2003-1 5221 Lenguaje de Programación Estructurada PRÁCTICA No. LABORATORIO DE Ingeniero en Computación DURACIÓN (HORA) 3 NOMBRE DE LA PRÁCTICA Ciclos 2 1. INTRODUCCIÓN Los ciclos sirven para repetir la ejecución de una sentencia o bloque de sentencias, éstas sentencias se ejecutan un número determinado de veces de acuerdo a un valor predefinido o el cumplimiento de una determinada acción. Los ciclos también conocidos como estructuras de control repetitivas, corresponden a unas de las estructuras de control más poderosas en lo que respecta al área de programación, en lenguaje de programación C se cuenta con 3 tipos de ciclos: el ciclo while, el ciclo do_while y el ciclo for. 2. OBJETIVO (COMPETENCIA) El alumno utilizará las estructuras de control repetitivas en programas de manera adecuada 3. FUNDAMENTO El ciclo while tiene la siguiente sintaxis: while (Condición) { (Bloque de Instrucciones) ; } Este ciclo ejecutará el bloque de instrucciones que se encuentran en el cuerpo del ciclo, es decir, entre { }, siempre y cuando la evaluación de la condición sea verdadera. Si en lugar de un bloque de instrucciones se tiene una sola instrucción, podrá omitirse { }. En el momento 1Formuló L.I. Hilda Olivia Albarran Padilla Ing. Verónica Beltrán Pérez, Ing. Eva Herrera Ramírez, LSC. Elvia Cristina Márquez S. LSC. Natalia Rodrigez Maestro Revisó Aprobó L.S.C. Mónica Cristina Lam Mora Coordinador de Programa Educativo Autorizó M.C. Miguel Ángel Martínez Romero Gestión de Calidad Director de la Facultad Código GC-N4-017 Revisión 1 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 que la condición de control del ciclo es falsa el ciclo termina. Si la condición resulta ser falsa desde un principio no se entra al ciclo. Este ciclo se puede controlar ya sea por contador, por centinela o por tarea. Cuando el ciclo es controlado por contador, el ciclo se repetirá un determinado número de veces, es decir, el contador toma un valor inicial y su valor se incrementa o decrementa hasta llegar al valor final. Cuando el ciclo es controlado por centinela el usuario puede suspender la introducción de datos cuando lo desee, introduciendo una señal adecuada llamada centinela. Por ejemplo, cuando el usuario digita una letra para salir como por ejemplo S o N para indicar si desea continuar o no, o cuando una decisión toma algún posible valor que no esté dentro del rango válido en un momento determinado, se le denomina centinela y su función primordial es detener el proceso de entrada de datos en una corrida de programa (si tenemos que proporcionar una lista de datos de números positivos, un valor centinela puede ser un número negativo). Cuando el ciclo es controlado por tarea, la condición del ciclo especifica que el cuerpo del ciclo debe continuar ejecutándose mientras la tarea no haya sido completada. Ejemplo #1: Leer un número y contar los enteros positivos la salida se dará cuando se introduzca un número negativo o cero. (Ejemplo de un ciclo controlado por centinela). #include <stdio.h> int main( ) { int num,contador=0; printf("Dame un número"); scanf("%d",&num); while (num>0) { contador=contador+1; printf("Dame un número"); scanf("%d",&num); } 2Formuló L.I. Hilda Olivia Albarran Padilla Ing. Verónica Beltrán Pérez, Ing. Eva Herrera Ramírez, LSC. Elvia Cristina Márquez S. LSC. Natalia Rodrigez Maestro Revisó Aprobó L.S.C. Mónica Cristina Lam Mora Coordinador de Programa Educativo Autorizó M.C. Miguel Ángel Martínez Romero Gestión de Calidad Director de la Facultad Código GC-N4-017 Revisión 1 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 número de enteros positivos es %d",contador); return 0; } En el ejemplo anterior vemos que la salida del ciclo depende de una variable introducida por el teclado (en nuestro ejemplo num) por lo que decimos que el ciclo esta controlado por un centinela, ahora veamos el siguiente ejemplo: Ejemplo #2: Leer 10 números, imprimir cada uno de ellos.(Ejemplo de ciclo controlado por contador). #include <stdio.h> int main( ) { int num,contador=0; while (contador<10) { printf("Dame un número"); scanf("%d",&num); printf("Numero %d", num); contador=contador+1; } return 0; } Como podemos ver la salida del ciclo while no esta controlado por un centinela, sino por un contador, es decir la salida del ciclo se dá cuando se cumple un número determinado de veces (en este caso 10), por lo que el ciclo está controlado por un contador. Ejemplo #3: Leer una serie de números, imprimir cada uno de ellos. La salida se dará cuando la suma exceda de 100. (Ejemplo de ciclo controlado por tarea). #include <stdio.h> int main( ) { int num, suma=0; 3Formuló L.I. Hilda Olivia Albarran Padilla Ing. Verónica Beltrán Pérez, Ing. Eva Herrera Ramírez, LSC. Elvia Cristina Márquez S. LSC. Natalia Rodrigez Maestro Revisó Aprobó L.S.C. Mónica Cristina Lam Mora Coordinador de Programa Educativo Autorizó M.C. Miguel Ángel Martínez Romero Gestión de Calidad Director de la Facultad Código GC-N4-017 Revisión 1 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 while (suma<=10) { printf("Dame un número"); scanf("%d",&num); printf("Número %d", num); suma=suma+1; } printf("suma %d",suma); return 0; } Muchas tareas frecuentes implican la lectura de una lista de números y calculan alguna operación (podría ser una suma), puede darse el caso en el que la salida del ciclo dependa de alguna operación, entonces el ciclo está controlado por una tarea como en el caso anterior. El ciclo do_while tienen la siguiente sintaxis: do { (Bloque de Instrucciones); } while (Condición); En el ciclo do_while primero se ejecuta el bloque de instrucciones y después se evalúa la condición. Si la condición resulta verdadera volvemos a ejecutar el bloque de instrucciones que se encuentran dentro de las { } o del cuerpo del ciclo, y así sucesivamente, cuando la condición resulta falsa el ciclo termina. Se recomienda su uso cuando se requiere que el bloque de instrucciones se ejecute al menos una vez, como podría ser un menú. Si se está repitiendo una sola instrucción no son necesarias las llaves { }. La mayoría de los programadores las incluyen para reconocer fácilmente que el While que termina al Do es parte de ese ciclo y no del principio de un ciclo While. El ciclo do-while al igual que el ciclo while puede ser controlado por contador, centinela o tarea. Ejemplo #4: Leer una serie de números y contar los enteros positivos, la salida se dará cuando 4Formuló L.I. Hilda Olivia Albarran Padilla Ing. Verónica Beltrán Pérez, Ing. Eva Herrera Ramírez, LSC. Elvia Cristina Márquez S. LSC. Natalia Rodrigez Maestro Revisó Aprobó L.S.C. Mónica Cristina Lam Mora Coordinador de Programa Educativo Autorizó M.C. Miguel Ángel Martínez Romero Gestión de Calidad Director de la Facultad Código GC-N4-017 Revisión 1 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 se introduzca un número negativo o cero. #include <stdio.h> int main( ) { int num,contador=0; do { printf("Dame un número"); scanf("%d",&num); if (num>0) contador=contador+1; }while (num>0); printf("El número de enteros positivos es %d",contador); return 0; } El ciclo for tiene la siguiente sintaxis: for (Valor Inicial ; Valor Final ; Incremento o decremento de la Variable) { (Bloque de Instrucciones); } El ciclo for se ejecutará un cierto número de veces especificando desde un valor inicial hasta el valor final. Si el valor final es mayor que el valor inicial significa que el ciclo va en incremento así que llegaremos al valor final sumandole uno o más al valor de la 5Formuló L.I. Hilda Olivia Albarran Padilla Ing. Verónica Beltrán Pérez, Ing. Eva Herrera Ramírez, LSC. Elvia Cristina Márquez S. LSC. Natalia Rodrigez Maestro Revisó Aprobó L.S.C. Mónica Cristina Lam Mora Coordinador de Programa Educativo Autorizó M.C. Miguel Ángel Martínez Romero Gestión de Calidad Director de la Facultad Código GC-N4-017 Revisión 1 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 variable(incremento). Si el valor inicial es mayor al valor final significa que es un ciclo en decremento así que llegaremos al valor final restandole uno o más a la variable(decremento). Al igual que los ciclos anteriores, si en lugar de un bloque de instrucciones se tiene una sola instrucción podrán omitirse { }. Se recomienda su uso cuando se necesita ejecutar un número predeterminado de veces un bloque de instrucciones. Ejemplo #5: Leer 10 números, imprimir cada uno de ellos. #include <stdio.h> int main( ) { int num,contador; for ( contador=1; contador<=10; contador++ ) { printf("Dame un número"); scanf("%d", &num); printf("Número %d", num); } return 0; } La variable contador se le llama variable de control y su valor inicial es 1 (de tipo entero), el valor límite o final es 10 y se controla atraves de una condición (contador <= 10). La expresión de incremento es contador++ lo que significa que cada vez que se repita el ciclo sumará el valor de uno a la variable de control contador, esto significa que el ciclo ejecuta las instrucciones que se encuentran dentro del cuerpo del ciclo o { }, una vez por cada valor de contador en orden ascendente 1 a 10. En la primera pasada contador tomará el valor de 1, en la segunda iteración su valor será 2, y así sucesivamente hasta que toma el valor de 10. Los rangos de incremento/decremento de la variable o expresión de control del ciclo pueden ser cualquier valor y no siempre 1. Es importante hacer notar que el valor inicial de la variable de control podría ser diferente de 1 y además puede decrementarse en vez de incrementarse y no necesariamente los incrementos o decrementos tendrían que ser en 1. Comparación entre ciclos while, do-while y for 6Formuló L.I. Hilda Olivia Albarran Padilla Ing. Verónica Beltrán Pérez, Ing. Eva Herrera Ramírez, LSC. Elvia Cristina Márquez S. LSC. Natalia Rodrigez Maestro Revisó Aprobó L.S.C. Mónica Cristina Lam Mora Coordinador de Programa Educativo Autorizó M.C. Miguel Ángel Martínez Romero Gestión de Calidad Director de la Facultad Código GC-N4-017 Revisión 1 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 while for do-while El uso más frecuente es cuando la repetición no esta controlada por contador, la evaluación de la condición precede a cada repetición del ciclo, es decir, el bloque de instrucciones que conforman el cuerpo de l ciclo puede no ser ejecutado si la condición resulta falsa. Es adecuado cuando el número de repeticiones se conoce por anticipado y requerimos de un contador. La evaluación de la condición precede a la ejecución del bloque de instrucciones que conforman el cuerpo del ciclo. Es adecuado para asegurar que al menos se ejecute el ciclo una vez El flujo de control ordinario de un ciclo se puede romper o interrumpir mediante las sentencias break y continue. La sentencia break produce una salida inmediata del ciclo for en que se encuentra situada. Ejemplo #6 #include <stdio.h> int main() { int i, num,suma=0; for(i=1;i<=10;i++) { printf("dame un número"); scanf("%d",&num); if (num<0) {printf("salir del ciclo"); break; } suma+=num; } printf("Suma=%d", suma); return 0; } La sentencia continue termina la iteración que se está realizando y comenzará de nuevo la 7Formuló L.I. Hilda Olivia Albarran Padilla Ing. Verónica Beltrán Pérez, Ing. Eva Herrera Ramírez, LSC. Elvia Cristina Márquez S. LSC. Natalia Rodrigez Maestro Revisó Aprobó L.S.C. Mónica Cristina Lam Mora Coordinador de Programa Educativo Autorizó M.C. Miguel Ángel Martínez Romero Gestión de Calidad Director de la Facultad Código GC-N4-017 Revisión 1 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 siguiente iteración. Ejemplo #7 #include <stdio.h> int main( ) { int i, num,suma=0; for(i=1;i<=10;i++) { printf("dame un número"); scanf("%d",&num); if (num<0) continue; suma+=num; } printf("Suma=%d", suma); return 0; } Una sentencia break puede ocurrir únicamente en el cuerpo de una sentencia for, while, do-while o switch. Una sentencia continue solo puede ocurrir dentro del cuerpo de una sentencia for, while o do-while . Ciclos anidados (*)Una determinada situación se puede repetir si previamente se han repetido otras mas pequeñas comprendidas en aquella. El nacimiento de un nuevo día esta supeditado al paso previo de 24 horas. Una hora tiene 60 minutos. Un minuto a su vez esté formado por 60 segundos. El paso de unidad de tiempo a otra superior implica que se ha completado el ciclo de la unidad de tiempo inmediatamente inferior a ella. Estas situaciones no solo son propias del tiempo; hay otras muchas que presentan características semejantes . Cuando leemos una página de un libro no pasamos a la página siguiente hasta no haber leído la página actual. Las páginas están formadas por un conjunto de líneas y éstas por un conjunto variable de caracteres o símbolos. Un ciclo puede estar formado por otro u otros ciclos. Al igual que con el if, que dentro de un if 8Formuló L.I. Hilda Olivia Albarran Padilla Ing. Verónica Beltrán Pérez, Ing. Eva Herrera Ramírez, LSC. Elvia Cristina Márquez S. LSC. Natalia Rodrigez Maestro Revisó Aprobó L.S.C. Mónica Cristina Lam Mora Coordinador de Programa Educativo Autorizó M.C. Miguel Ángel Martínez Romero Gestión de Calidad Director de la Facultad Código GC-N4-017 Revisión 1 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 podíamos poner todos los if que fueran necesarios, análogamente, dentro de un ciclo puede ir otro u otros ciclos, de tal forma que el último de todos, el situado más interiormente, es el primero en cerrar, acabar. El primero de todos, situado más fuera, es el último en terminar. Es semejante a lo que hacemos cuando dentro de una caja introducimos otras cajas de menor tamaño.Al cerrarlas, la primera en ponerle la tapa será la situada más internamente; a continuación, la situada más dentro. Por último cerramos la caja que contiene a las demás, la más grande. (*) Bibliografía: Metodología de la Programación a través del Pseudocódigo Miguel A. Rodríguez Almeida Ed.McGraw Hill En C se pueden hacer programas que utilicen uno o mas ciclos dentro de otro, a esto se le conoce como ciclos anidados. Cuando el primer ciclo se repite, el ciclo o los ciclos que están dentro también se repiten, se vuelven a evaluar los componentes de control y se ejecutan todas las repeticiones requeridas. En el siguiente ejemplo se utilizan ciclos anidados para visualizar las tablas de multiplicar del 1 al 3: #include <stdio.h> int main( ) { int x,y,r; for(x=1;x<=3;x++) for(y=1;y<=5;y++) { r=x*y; printf(" %d * %d = %d\n", x,y,r); } return 0; } La salida del programa es: 1*1=1 9Formuló L.I. Hilda Olivia Albarran Padilla Ing. Verónica Beltrán Pérez, Ing. Eva Herrera Ramírez, LSC. Elvia Cristina Márquez S. LSC. Natalia Rodrigez Maestro Revisó Aprobó L.S.C. Mónica Cristina Lam Mora Coordinador de Programa Educativo Autorizó M.C. Miguel Ángel Martínez Romero Gestión de Calidad Director de la Facultad Código GC-N4-017 Revisión 1 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 1*2=2 1*3=3 1*4=4 1*5=5 2*1=2 .... 3*5=15 El primer ciclo proporcionará los números del 1 al 3 mientras que el segundo ciclo generará los números del 1 al 5. Hacer un programa que pida 20 números enteros positivos de 3 cifras e imprima el número menor. #include <stdio.h> int main() { int n,menor,c=0; while (c<20) { do { printf("Ingresa un num. entero positivo de 3 cifras"); scanf("%d", &n); } while ( n<100 || n>999 ); if (c==0) menor=n; else if (n<menor) menor=n; c++; } printf( " El num. menor fué : %d",menor); return 0; } 10Formuló L.I. Hilda Olivia Albarran Padilla Ing. Verónica Beltrán Pérez, Ing. Eva Herrera Ramírez, LSC. Elvia Cristina Márquez S. LSC. Natalia Rodrigez Maestro Revisó Aprobó L.S.C. Mónica Cristina Lam Mora Coordinador de Programa Educativo Autorizó M.C. Miguel Ángel Martínez Romero Gestión de Calidad Director de la Facultad Código GC-N4-017 Revisión 1 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 El ciclo while se utiliza para pedir 20 números y el ciclo do-while valida que el número sea de 3 cifras. 4. PROCEDIMIENTO (DESCRIPCIÓN) A) EQUIPO NECESARIO MATERIAL DE APOYO Computadoras con Linux instalado B) Práctica impresa. DESARROLLO DE LA PRÁCTICA A continuación enlistan 10 ejercicios, de los cuales el alumno deberá resolver utilizando ciclos de la siguiente manera: Laboratorio de Lunes: Ejercicios 1 y 6 Laboratorio de Martes: Ejercicios 2 y 7 Laboratorio de Miércoles: Ejercicios 3 y 8 Laboratorio de Jueves: Ejercicios 4 y 9 Laboratorio de Viernes: Ejercicios 5 y 10 1. Hacer un programa que presente el siguiente menú de opciones: [1] Depliegue de asteriscos. [2] Generar y calcular serie de números. [3] Cálculo de salario. [4] Terminar En la opción [1] desplegará 10 filas o renglones de asteriscos que contengan 50 asteriscos cada fila por medio del ciclo for. 11Formuló L.I. Hilda Olivia Albarran Padilla Ing. Verónica Beltrán Pérez, Ing. Eva Herrera Ramírez, LSC. Elvia Cristina Márquez S. LSC. Natalia Rodrigez Maestro Revisó Aprobó L.S.C. Mónica Cristina Lam Mora Coordinador de Programa Educativo Autorizó M.C. Miguel Ángel Martínez Romero Gestión de Calidad Director de la Facultad Código GC-N4-017 Revisión 1 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 En la opción [2] preguntará al usuario hasta que número quiere que llegue la serie (N). Deberá validar que éste número sea un número entero positivo. Utiliza el ciclo while para desplegar y calcular la siguiente serie: 1 + ½ +1/3 + ¼ + … + 1/N. En la opción [3] Calculará cuanto habrá ganado una persona hasta retirarse a los 65 años a partir de la edad actual y cuál fue su salario final por medio del ciclo do_while. El programa debe solicitar el nombre de la persona, edad y salario inicial. El trabajador recibirá un aumento del 5 % por año. Al final desplegará la salida de la siguiente manera: Hola Juan Perez tienes 20 años, tu salario a esta edad es x pesos a los 65 años vas a ganar y pesos y habrás recibido z pesos totales por concepto de salario. En la opción [4] el usuario terminará de utilizar el programa. Mientras que ésta opción no sea seleccionada el usuario podra volver a seleccionar cualquier opción del menú. 2. Hacer un programa que presente el siguiente menú de opciones: [1] Calcular importe de una nota de venta. [2] Contrato de secretaria. [3] Generar tablas de multiplicar. [4] Fin. En la opción [1] Deberá pedir los siguientes datos: cantidad, descripción del artículo y precio unitario. Pedirá los datos del primer artículo que se lleva el cliente y desplegará la información de la siguiente manera: Cantidad 10 Descripción lapices Precio unitario 3.00 Total 12Formuló L.I. Hilda Olivia Albarran Padilla Ing. Verónica Beltrán Pérez, Ing. Eva Herrera Ramírez, LSC. Elvia Cristina Márquez S. LSC. Natalia Rodrigez Maestro Revisó Subtotal 30.00 $30.00 Aprobó L.S.C. Mónica Cristina Lam Mora Coordinador de Programa Educativo Autorizó M.C. Miguel Ángel Martínez Romero Gestión de Calidad Director de la Facultad Código GC-N4-017 Revisión 1 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 Deberá preguntar al usuario si desea llevar otro artículo, en caso de que la respuesta sea no, se termina el ciclo y en caso de que la respuesta sea si, volvemos a pedir el siguiente artículo, ahora la información la mostrará de la siguiente manera: Cantidad 10 2 Descripción lapices Cuadernos Precio unitario Subtotal 3.00 30.00 22.50 45.00 Total $75.00 Y así sucesivamente hasta que la respuesta sea ‘n’ o ‘N’. Utilizar ciclo while. En la opción [2] Una solicitante para un empleo de secretaria recibira un maximo de 5 pruebas de mecanografia. Sera contratada tan pronto como logre teclear mas de 50 palabras por minuto en dos pruebas. Escriba un programa que permita que permita al supervisor teclear la calificacion de cada prueba despues de que aquella haya sido completada. El programa debera imprimir “contratar” tan pronto como la solicitante califique, sin hacer mas pruebas. Despues de que 5 pruebas hayan sido hechas, si todavia el solicitante no ha reunido las condiciones, el programa debera imprimir “Rechazar”. Utilizar ciclo do-while. En la opción [3] deberá generar las tablas de multiplicar en el rango señalado por el usuario, es decir, empezará en el número marcado como inicio y terminará en el número que el usuario señale como final. El inicio y final será proporcionado por el usuario. Utilzar ciclo for. En la opción [4] terminará la ejecución del programa, mientras que el usuario no seleccione ésta, deberá dar la opción al usuario de elegir otra opción del menú. 3. Hacer un programa que muestre el siguiente menú de opciones: [1] Sumar números enteros positivos. [2] Calcular ventas totales. [3]] Generar y calcular serie de números. [4] Salir En la opción [1] realizará la suma de N números enteros positivos de tres cifras por medio del ciclo while. Deberá validar que el usuario proporcione números que cumplan con dicha condición. La suma la realizará como si la estuviera realizando a mano y no por medio 13Formuló L.I. Hilda Olivia Albarran Padilla Ing. Verónica Beltrán Pérez, Ing. Eva Herrera Ramírez, LSC. Elvia Cristina Márquez S. LSC. Natalia Rodrigez Maestro Revisó Aprobó L.S.C. Mónica Cristina Lam Mora Coordinador de Programa Educativo Autorizó M.C. Miguel Ángel Martínez Romero Gestión de Calidad Director de la Facultad Código GC-N4-017 Revisión 1 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 de la computadora o calculadora. Por ejemplo: 3 4 5 2 7 1 5 6 9 ---------1 1 8 5 En la opción [2] calcule las ventas totales de un negocio. Este negocio cuenta con 3 vendedores los cuales reportan las ventas que registraron en las cuatro semanas del mes. Debera mostrar al final las ventas totales del vendedor1, del vendedor2 y del vendedor3 y la suma de éstas tres(ventas totales mensuales del negocio). Deberá pedir las ventas de la semana1,semana2, semana3 y semana4 de cada vendedor.(utilizar ciclo do_while) En la opción [3] generará y calculará la siguiente serie: ½ * 1/3+ ¼ *.... +/* 1/N. Deberá pedir el número hasta el cuál llegará la serie (N), el cuál tendra que ser un número entero positivo. Utilizar ciclo for. En la opción [4] deberá salir del programa, en caso que ésta opción no haya sido seleccionada deberá permitir que el usuario seleccione cualquier otra opción del menu. 4. Hacer un programa que muestre el siguiente menú de opciones: [1] Calcular ingresos globales de un hospital. [2] Buscar divisores. [3] Generar y calcular la siguiente serie de números. [4] Terminar. En la opción [1] pedirá la siguiente información: número de cuarto, días de hospitalización, costos por medicamentos y costos por honorarios médicos. Se cobran 800 pesos por cada día de hospitalización. Se pide que calcule el costo por cada paciente, y los ingresos globales (por todos los pacientes) que ha obtenido el hospital por cada uno de los siguientes conceptos de hospitalización, honorarios médicos y medicamentos. Deberá preguntar si desea capturar los datos de otro paciente, cuando la respuesta sea ‘n’ o ‘N’ se termina la 14Formuló L.I. Hilda Olivia Albarran Padilla Ing. Verónica Beltrán Pérez, Ing. Eva Herrera Ramírez, LSC. Elvia Cristina Márquez S. LSC. Natalia Rodrigez Maestro Revisó Aprobó L.S.C. Mónica Cristina Lam Mora Coordinador de Programa Educativo Autorizó M.C. Miguel Ángel Martínez Romero Gestión de Calidad Director de la Facultad Código GC-N4-017 Revisión 1 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 opción y se regresará al menú principal. Utilizar ciclo while. En la opción [2] calcular los divisores de un números enteros positivos. Deberá mostrar el número con sus respectivos divisores. Utilizar ciclo do_while. En la opción [3] deberá generar y calcular la siguiente serie de números: 1+1/2- 1/3+1/4-1/5+1/6-…+1/N. Deberá preguntar al usuario hasta donde desea que termine la serie (N), y éste deberá ser un número entero positivo. Utilizar ciclo for. En la opción [4] deberá terminar la ejecución del programa, en caso de no seleccionar esta opción debe permitir al usuaro seleccionar cualquier otra opción del menú principal. 5. Hacer un programa que muestre el siguiente menú de opciones: [1] Calcular Sueldo Mensual. [2] Calcular factorial. [3] Determinar número de meses. [4] Salir En la opción [1] deberá calcular el sueldo mensual de N trabajadores considerando que le pagan por día trabajado y un bono de 100 pesos cuando trabaja más de cuatro días semanales. Deberá preguntar el sueldo diario y los días trabajados en la semana1, semana2, semana3 y semana4. Utilizar ciclo while. En la opción [2] calcular el factorial de un número entero positivo. El factorial de un número entero positivo se define como el producto de todos los números naturales anteriores o iguales a él. Por ejemplo, Si el número fue el número 10, desplegará el factorial de la siguiente manera: 3628800 =1*2*3*4*5*6*7*8*9*10…utilizar ciclo for. En la opción [3] Alejandra tiene $ 20,000.00, si se le da un interes fijo mensual del 3%, en cuantos meses sobrepasará los $50,000.00. Utilizar ciclo do_while. En la opción [4] deberá terminar la ejecución del programa, si esta opción no es seleccionada se 15Formuló L.I. Hilda Olivia Albarran Padilla Ing. Verónica Beltrán Pérez, Ing. Eva Herrera Ramírez, LSC. Elvia Cristina Márquez S. LSC. Natalia Rodrigez Maestro Revisó Aprobó L.S.C. Mónica Cristina Lam Mora Coordinador de Programa Educativo Autorizó M.C. Miguel Ángel Martínez Romero Gestión de Calidad Director de la Facultad Código GC-N4-017 Revisión 1 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 le permitirá al usuario seleccionar otra opción del menú. 6. Se va a aplicar una encuesta al salir del supermercado. Deberá realizar un programa que pregunte lo siguiente: Nombre del cliente, edad del cliente, sexo del cliente (validar que solo acepte f ó m ) y cantidad de artículos que compró. Para cada artículo deberá pedir el nombre del artículo y el precio. Calcular e imprimir : Quien va más al supermercado los hombres o las mujeres? Quien compra más artículos los hombres o las mujeres? El precio promedio de todos los artículos La edad promedio de las mujeres que van al supermercado La edad promedio de los hombres que van al supermercado. Deberá validar el programa para que no acepte valores negativos 7. Hacer un programa que simule un cajero automático. Deberá presentar un menú como el siguiente: [1] Depósito [2] Retiro [3] Consulta de saldo [4] Fin En la opción [1] deberá solicitar la cantidad a depositar . Esta deberá ser una cantidad positiva. En la opción [2] mostrará el saldo actual para que el usuario sepa hasta cuanto puede retirar. Deberá validar que el usuario no intente retirar más de lo que tiene. Después del retiro le indicará al usuario el saldo actual. En la opción [3] desplegará el saldo actual. En la opción [4] terminará la ejecución del programa. El programa se repetirá mientras no se seleccione ésta opción. 8. Hacer un programa que con ciclos anidados produzca la siguiente salida: Revisó Aprobó Autorizó 16Formuló L.I. Hilda Olivia Albarran Padilla M.C. Miguel Ángel Ing. Verónica Beltrán Pérez, Ing. Eva Herrera Ramírez, LSC. Elvia Cristina L.S.C. Mónica Cristina Martínez Romero Márquez S. LSC. Natalia Rodrigez Lam Mora Maestro Coordinador de Programa Educativo Gestión de Calidad Director de la Facultad Código GC-N4-017 Revisión 1 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 * ** *** **** ***** ***** **** *** ** * ***** **** *** ** * * ** *** **** ***** 9. Hacer un programa que pida los siguientes datos a N alumnos: Nombre del alumno, matricula, nombre de la carrera, cantidad de materias que está cursando, cantidad de parciales que realiza en cada materia y para cada parcial pedir su calificación. Con estos datos deberá calcular e imprimir lo siguiente: Promedio general del alumno Promedio por materia Promedio general de todos los alumnos Cual fué el promedio más alto Cual fué el promedio más bajo Cuantos alumnos tuvieron un promedio menor a Cuantos alumnos tuvieron un promedio mayor o igual a 6 10. Cierta empresa utiliza una fórmula poco común para calcular el sueldo de sus empleados: Sueldo = 100 + edad + (1+2+3…..+ antigüedad) -------------------------------antiguedad Elaborar un programa que permita leer para cada empleado lo siguiente: Número de empleado, nombre, edad, antigüedad en la empresa. Deberá imprimir el número del empleado, nombre, sueldo y antigüedad en la empresa, así como el total de empleados con una antigüedad mayor a 5 años , el empleado que gana mas y el que gana menos. Se pide una salida con formato claro y validar que la edad no sea menor a 18 ni mayor a 50. La antigüedad en la empresa se expresa en años. Deberá validar que no acepte menores de 18 años, y que el sueldo y la antigüedad no sean valores negativos. 17Formuló L.I. Hilda Olivia Albarran Padilla Ing. Verónica Beltrán Pérez, Ing. Eva Herrera Ramírez, LSC. Elvia Cristina Márquez S. LSC. Natalia Rodrigez Maestro Revisó Aprobó L.S.C. Mónica Cristina Lam Mora Coordinador de Programa Educativo Autorizó M.C. Miguel Ángel Martínez Romero Gestión de Calidad Director de la Facultad Código GC-N4-017 Revisión 1 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ÁLCULOS Y REPORTE El maestro evaluará de manera individual sobre el funcionamiento de los ciclos for, while y do_while, controlados por contador, centinela o por tarea para ver si el alumno sabe en qué situaciones aplicar cada tipo de ciclo y cómo será controlado según el problema que se presente, así como también en lo referente al uso de contadores y acumuladores. 5. RESULTADOS Y CONCLUSIONES Al finalizar esta práctica el alumno podrá utilizar ciclos de la manera más conveniente de acuerdo al planteamiento presentado, es decir en cuales situaciones utilizar cada tipo de ciclo: while, do_while o for, ya sean estos controlados por contadores, por centinela o por tarea, además del uso de contadores y acumuladores. 6. ANEXOS Referencia 1 Uso de ciclos: http://labsopa.dis.ulpgc.es/cpp/intro_c/ Referencia 2 Uso de ciclos: http://www.elrincondelc.com/cursoc/cursoc7.html 7. REFERENCIAS 18Formuló L.I. Hilda Olivia Albarran Padilla Ing. Verónica Beltrán Pérez, Ing. Eva Herrera Ramírez, LSC. Elvia Cristina Márquez S. LSC. Natalia Rodrigez Maestro Revisó Aprobó L.S.C. Mónica Cristina Lam Mora Coordinador de Programa Educativo Autorizó M.C. Miguel Ángel Martínez Romero Gestión de Calidad Director de la Facultad Código GC-N4-017 Revisión 1