FACULTAD DE INGENIERÍA
ESCUELA PROFESIONAL DE INGENIERÍA DE SISTEMAS
“ESTRUCTURA REPETITIVA HACER MIENTRAS”
Ejercicios Propuestos
1. Imprimir la suma de los 100 números impares consecutivos menores a 500
public static void main(String[] args) {
int contador = 0;
int suma = 0;
int numero = 1;
while (contador < 100) {
if (numero % 2 != 0) {
suma += numero;
contador++;
}
numero++;
}
[Link]("La suma de los 100"
+" numeros impares consecutivos"
+" menores a 500 es: "+"\n"+suma);
}
}
2. Se ingresan números las cuales se detiene dicho ingreso cuando se ingresa
el número cero. Hallar el promedio.
public static void main(String[] args) {
Scanner sc = new Scanner([Link]);
float prom;
float sumanum = 0;
int cantnum = 0;
int num;
do{
[Link]("Ingrese un numero"
+ " y 0 para detener: ");
String valor = [Link]();
num = (int) [Link](valor);
sumanum += num;
cantnum ++;
}while(num != 0);
prom = sumanum/(cantnum-1);
[Link]("El promedio es: "+ prom);
}
}
Fundamentos de Programación 1
FACULTAD DE INGENIERÍA
ESCUELA PROFESIONAL DE INGENIERÍA DE SISTEMAS
3. Se ingresan números las cuales se detiene dicho ingreso cuando se ingresa
el número cero. Hallar el promedio de los que son mayores a 500 y el
promedio de los que son menores a 500.
public static void main(String[] args) {
Scanner sc = new Scanner([Link]);
int numero;
int sumMay500 = 0;
int cantMay500 = 0;
float promMay500 = 0;
int sumMen500 = 0;
int cantMen500 = 0;
float promMen500 = 0;
do {
[Link]("Ingrese un numero"
+ " y 0 es para detener: ");
String valor = [Link]();
numero = (int) [Link](valor);
if (numero > 500) {
sumMay500 += numero;
cantMay500++;
} else if (numero < 500 && numero != 0) {
sumMen500 += numero;
cantMen500++;
}
} while (numero != 0);
if (cantMay500 > 0) {
promMay500 = sumMay500 / cantMay500;
[Link]("Promedio de numeros"
+ " mayores a 500 es: " + promMay500);
} else {
[Link]("No se ingresaron numeros "
+ "mayores a 500.");
}
if (cantMen500 > 0) {
promMen500 = sumMen500 / cantMen500;
[Link]("Promedio de numeros"
+ " menores a 500 es: " + promMen500);
} else {
[Link]("No se ingresaron "
+ "numeros menores a 500.");
}
}
}
Fundamentos de Programación 2
FACULTAD DE INGENIERÍA
ESCUELA PROFESIONAL DE INGENIERÍA DE SISTEMAS
4. Se ingresan N números enteros, se quiere saber cuántos múltiplos a 5 de
han ingresado y cuantos múltiplos a 2 se han ingresado.
public static void main(String[] args) {
Scanner sc = new Scanner([Link]);
int cantMulti2 = 0;
int cantMulti5 = 0;
[Link]("Ingresa la cantidad "
+ "de numeros: ");
int n = [Link]([Link]());
int cont = 0;
do {
[Link]("Ingresa un numero"
+ " entero: ");
int numero = [Link]
([Link]());
if (numero % 2 == 0) {
cantMulti2++;
}
if (numero % 5 == 0) {
cantMulti5++;
}
cont++;
} while (cont < n);
[Link]("Cantidad de multiplos"
+ " de 2: " + cantMulti2);
[Link]("Cantidad de multiplos"
+ " de 5: " + cantMulti5);
}
}
5. Realice un programa que lea de la entrada estándar números hasta que se
introduzca un cero. En ese momento el programa debe terminar y mostrar en la
salida estándar el número de valores mayores que cero leídos.
public static void main(String[] args) {
Scanner sc = new Scanner([Link]);
int cantVal = 0;
int numero;
do {
[Link]("Ingrese un "
+ "numero y 0 es para terminar: ");
String valor = [Link]();
numero = (int) [Link](valor);
if (numero > 0) {
cantVal++;
}
} while (numero != 0);
[Link]("Cantidad de valores
mayores"
+ " que cero es: " + cantVal);
}
Fundamentos de Programación 3
FACULTAD DE INGENIERÍA
ESCUELA PROFESIONAL DE INGENIERÍA DE SISTEMAS
6. Realice un programa que solicite al usuario que piense un número entero
entre el 1 y el 100. El programa debe generar un numero aleatorio en ese
mismo rango [1-100], e indicarle al usuario si el número que digito es
menor o mayor al número aleatorio, así hasta que lo adivine. y por último
mostrarle el número de intentos que le llevo.
variable = limite_inferior + rand() % (limite_superior +1 - limite_inferior);
public static void main(String[] args) {
Scanner sc = new Scanner([Link]);
Random random = new Random();
int numAleatorio = [Link](100) + 1;
int intentos = 0;
int numeroUsuario;
[Link]("Adivina el número entre 1 y 100.");
do {
[Link]("Ingresa tu intento: ");
String valor = [Link]();
numeroUsuario = (int) [Link](valor);
intentos++;
if (numeroUsuario < numAleatorio) {
[Link]("El número es mayor.");
} else if (numeroUsuario > numAleatorio) {
[Link]("El número es menor.");
}
} while (numeroUsuario != numAleatorio);
[Link]("¡Felicidades! Adivinaste el número "
+ numAleatorio + " en " + intentos + " intentos.");
}
}
7. Hallar Su = 456 + 458 + 460 + ..... 800 sumandos
public static void main(String[] args) {
Scanner sc = new Scanner([Link]);
int suma = 0;
int valorInicial = 456;
int contador = 1;
do {
suma += valorInicial;
valorInicial += 2;
contador++;
} while (contador <= 800);
[Link]("La suma de"
+ " 456+458+460+"
+ "...800 es: " + suma);
}
}
Fundamentos de Programación 4
FACULTAD DE INGENIERÍA
ESCUELA PROFESIONAL DE INGENIERÍA DE SISTEMAS
8. Residuo por Restas
Ingrese un valor “a”, dado como dividendo y otro valor “b”, dado como
divisor y calcule a través de restas sucesivas, el residuo que se obtiene al
dividir a entre b.
public static void main(String[] args) {
Scanner sc = new Scanner([Link]);
[Link]("Ingrese el valor de a"
+ " (dividendo): ");
int a = [Link]([Link]());
[Link]("Ingrese el valor de b"
+ " (divisor): ");
int b = [Link]([Link]());
int residuo = a;
do {
residuo -= b;
} while (residuo >= b);
[Link]("El residuo es: "
+ residuo);
}
}
9. Múltiplos de 9, Ingresar un número entero positivo y averiguar si es o no un
múltiplo de 9. Un número es múltiplo de 9 si la suma de sus cifras es 9 o
múltiplo de 9. Por ejemplo: 81 8+1 = 9; es múltiplo de 9. 99 9+9=18
1+8=9; es múltiplo de 9.
public static void main(String[] args) {
Scanner sc = new Scanner([Link]);
int num;
do {
[Link]("Ingrese un numero"
+ " entero positivo: ");
String valor = [Link]();
num = (int) [Link](valor);
while (num < 0) {
[Link]("Eso no es "
+ "un numero entero "
+ "positivo. Intentelo"
+ " de nuevo.");
}
} while (num <= 0);
if (num % 9 == 0) {
[Link](num +
" es multiplo de 9.");
} else {
[Link](num +
" no es multiplo de 9.");
}
}
}
Fundamentos de Programación 5
FACULTAD DE INGENIERÍA
ESCUELA PROFESIONAL DE INGENIERÍA DE SISTEMAS
10. Mínimo Común Múltiplo
Ingrese dos números enteros positivos a y b y luego calcule el Mínimo
Común Múltiplo de dichos números.
public static void main(String[] args) {
Scanner sc = new Scanner([Link]);
[Link]("Ingrese el primer numero"
+ " entero positivo (a): ");
int a = [Link]([Link]());
[Link]("Ingrese el segundo numero"
+ " entero positivo (b): ");
int b = [Link]([Link]());
if (a > 0 && b > 0) {
int num1 = a;
int num2 = b;
while (num2 != 0) {
int temp = num2;
num2 = num1 % num2;
num1 = temp;
}
int mcm = (a * b) / num1;
[Link]("El Minimo Comun Multiplo"
+" es: "+mcm);
} else {
[Link]("Por favor, ingrese dos "
+ "números enteros positivos.");
}
}
}
Fundamentos de Programación 6