
Ejercicios resueltos utilizando la sentencia while
1) Hacer un programa para ingresar un número y reportar todos sus factores primos. Por ejemplo si ingresamos 12 debe reportar 2 2 3. Si ingresamos 25 se debe reportar 5 5.
import java.util.Scanner;
public class Ejercicio01 {
public static void main(String[] args) {
Scanner entrada = new Scanner(System.in);
int numero, divisor=2;
System.out.print(«Ingresar numero: «);
numero = entrada.nextInt();
while(numero>1)
{
if(numero%divisor == 0)
{
System.out.print(divisor + » «);
numero = numero/divisor;
}
else
divisor++;
}
System.out.println();
}
}
2) Elaborar un programa para ingresar dos números enteros positivos y reportar su máximo común divisor.
import java.util.Scanner;
public class Ejercicio02 {
public static void main(String[] args) {
Scanner entrada = new Scanner(System.in);
int numero1, numero2, divisor=2, mcd=1;
System.out.print(«Ingresar primer numero: «);
numero1 = entrada.nextInt();
System.out.print(«Ingresar segundo numero: «);
numero2 = entrada.nextInt();
while(divisor<=numero1 && divisor<=numero2)
{
if(numero1%divisor == 0 && numero2%divisor == 0)
{
mcd = mcd*divisor;
numero1 = numero1/divisor;
numero2 = numero2/divisor;
}
else
divisor++;
}
System.out.println(«El maximo comun divisor es: » + mcd);
}
}
3) Elaborar un programa para ingresar dos números enteros positivos y reportar su mínimo común múltiplo.
import java.util.Scanner;
public class Ejercicio03 {
public static void main(String[] args) {
Scanner entrada = new Scanner(System.in);
int numero1, numero2, mcm=1, divisor=2;
System.out.print(«Ingresar primer numero: «);
numero1 = entrada.nextInt();
System.out.print(«Ingresar segundo numero: «);
numero2 = entrada.nextInt();
while(numero1!=1 || numero2!=1)
{
if(numero1%divisor == 0 || numero2%divisor == 0)
{
mcm = mcm*divisor;
if(numero1%divisor == 0){
numero1 = numero1/divisor;
}
if(numero2%divisor == 0){
numero2 = numero2/divisor;
}
}
else{
divisor++;
}
}
System.out.println(«El minimo común múltiplo es: » + mcm);
}
}
4) Hacer un programa para ingresar un número entero positivo y reportar la sumatoria de sus dígitos.
import java.util.Scanner;
public class Ejercicio04 {
public static void main(String[] args) {
Scanner entrada = new Scanner(System.in);
int numero, digito, suma=0;
System.out.print(«Ingresar numero: «);
numero = entrada.nextInt();
while(numero!=0)
{
digito = numero % 10;
suma = suma + digito;
numero = numero /10;
}
System.out.println(«La suma de digitos es : » + suma);
}
}
5) Hacer un programa para ingresar un número entero positivo y reportar si es capicúa. Un número capicúa se lee igual de izquierda a derecha que derecha a izquierda. Por ejemplo: 161, 2992.
import java.util.Scanner;
public class Ejercicio05 {
public static void main(String[] args) {
Scanner entrada = new Scanner(System.in);
int numero, digito , x, operacion=0;
System.out.print(«Ingresar numero: «);
numero = entrada.nextInt();
x = numero;
while(x!=0)
{
digito = x%10;
operacion = operacion*10+digito;
x = x/10;
}
if(numero==operacion)
System.out.println(«El numero «+numero+» es capicua»);
else
System.out.println(«El numero «+numero+» no es capicua «);
}
}
6) Hacer un programa para mostrar los números del 1 al 100
import java.util.Scanner;
public class Ejercicio06 {
public static void main(String[] args) {
System.out.println(«Numeros del 1 al 100: «);
int i=1;
while(i<=100)
{
System.out.println(i);
i++;
}
}
}
7) Hacer un programa para ingresar un número, si el número es mayor a 10, multiplique los 10 primeros números, sino, sumar los 10 primeros números.
import java.util.Scanner;
public class Ejercicio07 {
public static void main(String[] args) {
Scanner entrada = new Scanner(System.in);
int numero, suma=0, multiplicacion=1, i;
System.out.print(«Ingresar numero: «);
numero = entrada.nextInt();
i = 1;
if(numero>10)
{
while(i<=10){
multiplicacion = multiplicacion*i;
i++;
}
System.out.println(«La multiplicacion es: » + multiplicacion);
}
else{
while(i<=10){
suma = suma+i;
i++;
}
System.out.println(«La suma es: » + suma);
}
}
}
8) Hacer un programa para ingresar dos números enteros n y m y reportar la sumatoria de pares desde n hasta m.
import java.util.Scanner;
public class Ejercicio08 {
public static void main(String[] args) {
Scanner entrada = new Scanner(System.in);
int n, m, suma=0;
System.out.print(«Ingresar el comienzo(n): «);
n = entrada.nextInt();
System.out.print(«Ingresar el termino(m): «);
m = entrada.nextInt();
while(n<=m)
{
if(n%2==0){
suma = suma+n;
}
n++;
}
System.out.println(«La suma de pares es: » + suma);
}
}