Logo Studenta

07buclesalgo

¡Estudia con miles de materiales!

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

Continuar navegando

Materiales relacionados

122 pag.
02-C

User badge image

Aprenda aquí

1 pag.
11- Campos de bit

User badge image

medicenslam

102 pag.
Clase 4_ AnálIsis de código y Debugging

SIN SIGLA

User badge image

marta1985aresqueta