Descarga la aplicación para disfrutar aún más
Vista previa del material en texto
Práctico 7: bucles do-while y for, cálculos con bucles 1. Pruebas de escritorio 1. Programas con bucles do-while /* 1.1 */ int i = 0; do i = i + 1; while (i < 4); } /* 1.2 */ int i = 10; do i = i + 1; while (i < 4); } /* 1.3 */ int i = 3; int a = 0; do { i = i + 1; a = a + i; } while (i < 3); while (i < 5) i = i + 2; a = a + i; } 1 2. Programas con bucles for /* 2.1 */ int i = 0; int b = 0; for(i = 0; i < 3; i = i + 1){ b = b + 2; } /* 2.2 */ int i = 0; for(i = 0; i < 2; i = i + 3){ i = i - 2; } /* 2.3 */ int i = 10; int b = 4; for(i = 0; i < b; i = i + 2){ b = b + 1; } /* 2.4 */ int i = 0; int a = 1; for(i = 0; i < 10; i = i + a){ a = a + 1; } 3. Programas con bucles anidados /* 3.1 */ int i=0; int j=0; while (i < 3){ while (j < 3) j = j + 1; i = i + 1; } /* 3.2 */ int i=0; int j=0; int a=0; while (i < 4){ if (i % 2 == 0){ while (j < i){ 2 a = a + 1; j = j + 1; } } else a = a - 2; i = i+1; } 4. Salida de programas Acá no se trata de hacer pruebas de escritorio. En cambio, la consigna es decir cuál va a ser la salida cuando ejecutamos los programas siguientes. /* 4.1 */ int i = 0; int a = 20; while(i < a){ i = i + 1; a = a - 2; printf("%d < %d ?", i, a); } /* 4.2 */ int a = 0; int b = 0; while(a <= 10){ b = 10 - a; if (b % 3 == 0){ printf("%d", b); } a = a + 1; } /* 4.3 */ int i = 0; int j = 0; int a = 0; for(i = 1; i <= 20; i = i + 1){ for(j = 1; j <= 30 ; j = j + 1){ a = a + 1; } } printf("%d %d %d", i, j, a); 3 2. Problemas Escribir algoritmos que permitan resolver los siguientes problemas. 1. Ingresar y sumar una serie de números positivos. La carga finaliza cuando se ingresa un valor negativo. Imprimir la suma resultante 2. Ingresar n datos numéricos. Contar e imprimir la cantidad de valores que son mayores que el primer dato ingresado. 3. Ingresar n. Calcular e imprimir ∑n i=1 i. 4. Ingresar n y m. Calcular e imprimir ∑n i=1(i + m). 5. Ingresar n. Calcular e imprimir ∏n i=1(i + 1). 6. Ingresar n. Calcular e imprimir ∏10 i=1(i + n). Codificar la solución para cada problema en lenguaje C. 3. Juego adivina el número En este ejercicio vamos a programar un juego donde la computadora elige un número al azar entre 1 y 10, y el jugador tiene que adivinarlo. La estructura del programa es la siguiente: 1. el programa elige al azar un número n entre 1 y 10 2. el usuario ingresa un número u 3. si u no es el número exacto, el programa dice si n es más grande o más chiquito que el número ingresado 4. repetimos desde 2. hasta que u sea igual a n Usemos un bucle para que el programa le pida un entero al usuario por lo menos una vez y se repita hasta que sea encontrada el entero n. El programa tiene que imprimir los mensajes adecuados para informarle al usuario qué hacer y qué pasó. Para conseguir un número aleatorio dentro de un programa en C, usar las siguientes sentencias: srand(time(0)); n = rand(); Para que ese número aleatorio sea entre 1 y 10 (inclusive), reemplazar la segunda sentencia por: n = (rand() % 10) + 1; Programar el juego en un archivo adivina.c. 4 1. Pruebas de escritorio 1. Programas con bucles do-while 2. Programas con bucles for 3. Programas con bucles anidados 4. Salida de programas 2. Problemas 3. Juego adivina el número
Compartir