Escolar Documentos
Profissional Documentos
Cultura Documentos
Ejercicios Tema 4
Estructuras de Control Repetitivas
Autores:
M. Paz Sesmero Lorente
Paula de Toledo Heras
Fco. Javier Ordoez Morales
Juan Gmez Romero
Jose A. Iglesias Martnez
Jose Luis Mira
Programacin
SOLUCIONES
1. Escriba un programa en C que muestre en pantalla los nmeros enteros del 1 al
100.
#include <stdio.h>
int main(void){
int n;
//Se crea un bucle for cuya variable de control vara de 1 a 100.
//En cada iteracin se muestra por pantalla el valor de esta
//variable.
for (n =1; n<=100; n++)
printf (" %d ,", n);
return 0;
}
3. Escriba un programa en C que muestre en pantalla los nmeros enteros del 100 al
1.
#include <stdio.h>
int main(void){
int n;
/*Se crea un bucle for cuya variable de control:
Toma como valor inicial 100
Toma como valor final 1
En cada iteracin disminuye su valor en 1 unidad.*/
for (n=100; n>=1; n--)
printf (" %d ,", n);
return 0;
}
4. Escriba un programa que muestre en pantalla todos los mltiplos de 3 entre los
nmeros 1 y 100.
#include <stdio.h>
int main(void){
int n;
/*Se crea un bucle for cuya variable de control:
Toma como valor inicial 3
Se ejecuta mientras su valor es menor o igual que 100
En cada iteracin aumenta su valor en 3 unidades.*/
for (n=100; n>=1; n--)
printf (" %d ,", n);
return 0;
}
Programacin
Programacin
Programacin
Programacin
10. Escriba un programa en C que solicite nmeros al usuario hasta que se hayan
introducido 10 nmeros o la suma de todos los nmeros ledos sea mayor que 100.
A continuacin mostrar un mensaje indicando qu condicin se ha cumplido (es
decir, si se han introducido 10 nmeros o si su suma es mayor que 100).
#include <stdio.h>
int main(void){
int n;
int suma, contador;
//Se inicializan a cero las variables suma y contador
suma=0;
contador=0;
/*Se implementa un bucle do-while que se ejecutar mientras la
cantidad de nmeros introducidos sea menor que 10 y su suma sea
inferior a 100*/
do{
printf ("Introduzca un numero: ");
scanf("%d", &n);
suma=suma+n;
contador=contador+1;
}while ((contador<10)&&(suma<=100));
/* A este punto se llega porque (contador==10) o porque
(suma>100).Tambin es posible que se satisfagan ambas
condiciones*/
if (contador==10)
printf ("Se han introducido 10 numeros\n");
if (suma>100)
printf ("La suma de los numeros introducidos es superior a
100\n");
return 0;
}
Programacin
12. Modificar el ejercicio anterior para que el nmero mximo de intentos sea 5. Al
terminar el programa indicar si el usuario ha ganado (si ha adivinado el nmero
en menos de cinco intentos) o no.
#include <stdio.h>
#define SECRETO 54
int main(void){
int intentos=5; //Nmero de intentos
int adivinado=0; //Variable lgica que indica si se ha adivinado
el nm.
int numero;
/*Se implementa un bucle do-while que se repetir mientras el
nmero introducido por teclado no coincida con SECRETO
(adivinado==0) y no se supere el nmero de intentos mximo
permitido (intentos>0)*/
do{
printf("Introduzca un numero: ");
scanf("%d", &numero);
if (numero==SECRETO)
adivinado=1;
else{ //Se evala si es mayor o menor
if (SECRETO>numero)
printf ("El nmero secreto es mayor que %i\n", numero);
else
printf ("El nmero secreto es mayor que %i\n", numero);
intentos=intentos-1;
}
}while ((intentos>0) && (adivinado==0));
//Se analiza la causa por la que se ha salido del bucle
Programacin
if (adivinado)
printf ("ENHORABUENA. HA ADIVINADO EL NUMERO SECRETO\n");
else
printf ("Ha superado el nmero de intentos permitido\n");
return 0;
}
Programacin
}
total=total+n*precio;
}while(n!=0);
printf("\n Total vendido = %d \n", total);
return 0;
}