domingo, 12 de julio de 2026

Generar los números impares del 1 hasta n número y excluir un número en Java

Código del ejercicio:

package ejercicio;

import java.util.Scanner;

public class Ejercicio {

    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        System.out.print("Ingrese un número: ");
        int num = sc.nextInt();
        System.out.print("Ingrese un número a excluir: ");
        int x = sc.nextInt();
        int n = 1;
        while(n <= num){
            if(n != x){
                System.out.print(n + ",");
            }
            n += 2;
        }
    }

}

Definición de los códigos del ejercicio:

import java.util.Scanner; --> Importación explícita de Scanner.
Scanner sc = new Scanner(System.in); --> objeto de Scanner con nombre sc.
Scanner --> clase Scanner nos permite ingresar datos por teclado.
new --> palabra reservada que instancia un objeto de la clase Scanner.
System.in --> parámetro que indica de donde proceden los datos, en este caso del teclado.
System.out.print() --> imprime el texto en la consola y el cursor permanece al final del texto en la consola.
int --> dato entero de 32 bits.
nextInt() --> lee un número entero desde consola (teclado).
while --> el ciclo while recorre un bloque de código siempre que una condición específica sea verdadera.
for --> el ciclo for recorre un bloque de código varias veces.
<= --> el operador menor o igual ( <= ) devuelve true si el operando izquierdo es menor o igual que el operando derecho, y en false caso contrario.
if --> use if para especificar un bloque de código que se ejecutará, si una condición especificada es verdadera.
!= --> el operador de desigualdad ( != ) comprueba si sus dos operandos no son iguales y devuelve un resultado booleano.
+ --> el operador ( + ) concatena variables de cadena.
+= --> el operador de asignación de suma ( += ) suma el valor del operando derecho a una variable y asigna el resultado a la variable.

Explicación del Código:

Este programa solicita un número límite y un número que se desea excluir. Luego, utilizando un ciclo while, muestra únicamente los números impares desde 1 hasta el número ingresado, omitiendo el número indicado por el usuario.

Código

Scanner sc = new Scanner(System.in);
System.out.print("Ingrese un número: ");
int num = sc.nextInt();

System.out.print("Ingrese un número a excluir: ");
int x = sc.nextInt();

int n = 1;

while(n <= num){
    if(n != x){
        System.out.print(n + ",");
    }
    n += 2;
}

Explicación de cada parte

  • Scanner sc = new Scanner(System.in);
    Crea un objeto Scanner para leer los datos que escribe el usuario desde el teclado.
  • System.out.print("Ingrese un número: ");
    Muestra un mensaje solicitando el número límite hasta donde se generarán los números impares.
  • int num = sc.nextInt();
    Guarda el número ingresado por el usuario en la variable num.
  • System.out.print("Ingrese un número a excluir: ");
    Solicita al usuario un número impar que no desea mostrar en la lista.
  • int x = sc.nextInt();
    Almacena el número que será excluido.
  • int n = 1;
    Inicializa la variable n en 1 porque el primer número impar es el 1.
  • while(n <= num)
    El ciclo se ejecuta mientras n sea menor o igual al número límite ingresado.
  • if(n != x)
    Comprueba si el número actual es diferente del número que se desea excluir. Si son diferentes, el número se muestra en pantalla.
  • System.out.print(n + ",");
    Imprime el número impar seguido de una coma.
  • n += 2;
    Incrementa la variable en 2 para pasar directamente al siguiente número impar. Ejemplo: 1, 3, 5, 7, 9...

¿Cómo funciona el programa?

El programa comienza en el número 1 y utiliza un ciclo while para recorrer únicamente los números impares, aumentando de dos en dos. En cada repetición verifica si el número actual es igual al número que el usuario desea excluir. Si es diferente, lo imprime en pantalla; de lo contrario, lo omite. El proceso continúa hasta llegar al número límite ingresado.

Ejemplo:

Número límite: 15
Número a excluir: 7

Salida:

1,3,5,9,11,13,15

Código del ejercicio: Otra forma de hacer

package ejercicio;

import java.util.Scanner;

public class Ejercicio {

    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        System.out.print("Ingrese un número: ");
        int num = sc.nextInt();
        System.out.print("Ingrese un número a excluir: ");
        int x = sc.nextInt();
        for(int n = 1; n <= num; n += 2){
            if(n != x){
                System.out.print(n + ",");
            }
        }
    }

}

Definición de los códigos del ejercicio:

import java.util.Scanner; --> Importación explícita de Scanner.
Scanner sc = new Scanner(System.in); --> objeto de Scanner con nombre sc.
Scanner --> clase Scanner nos permite ingresar datos por teclado.
new --> palabra reservada que instancia un objeto de la clase Scanner.
System.in --> parámetro que indica de donde proceden los datos, en este caso del teclado.
System.out.print() --> imprime el texto en la consola y el cursor permanece al final del texto en la consola.
int --> dato entero de 32 bits.
nextInt() --> lee un número entero desde consola (teclado).
while --> el ciclo while recorre un bloque de código siempre que una condición específica sea verdadera.
for --> el ciclo for recorre un bloque de código varias veces.
<= --> el operador menor o igual ( <= ) devuelve true si el operando izquierdo es menor o igual que el operando derecho, y en false caso contrario.
if --> use if para especificar un bloque de código que se ejecutará, si una condición especificada es verdadera.
!= --> el operador de desigualdad ( != ) comprueba si sus dos operandos no son iguales y devuelve un resultado booleano.
+ --> el operador ( + ) concatena variables de cadena.
+= --> el operador de asignación de suma ( += ) suma el valor del operando derecho a una variable y asigna el resultado a la variable.

Explicación del Código:

Código

package ejercicio;

import java.util.Scanner;

public class Ejercicio {

    public static void main(String[] args) {

        Scanner sc = new Scanner(System.in);

        System.out.print("Ingrese un número: ");
        int num = sc.nextInt();

        System.out.print("Ingrese un número a excluir: ");  
        int x = sc.nextInt();

        for(int n = 1; n <= num; n += 2){
            if(n != x){
                System.out.print(n + ",");
            }
        }

    }

}

Explicación del código

1. package ejercicio;

Indica el paquete donde se encuentra la clase. Sirve para organizar los archivos del proyecto.

2. import java.util.Scanner;

Importa la clase Scanner, que permite leer datos escritos por el usuario desde el teclado.

3. public class Ejercicio

Define la clase principal del programa. Todo el código se encuentra dentro de esta clase.

4. public static void main(String[] args)

Es el método principal donde comienza la ejecución del programa.

5. Scanner sc = new Scanner(System.in);

Crea un objeto Scanner llamado sc para leer datos desde el teclado.

6. Solicitar el número límite

System.out.print("Ingrese un número: ");  
int num = sc.nextInt();

Pide al usuario un número y lo guarda en la variable num. Este será el límite hasta donde se generarán los números impares.

7. Solicitar el número a excluir

System.out.print("Ingrese un número a excluir: ");  
int x = sc.nextInt();

Pide al usuario un número que no debe aparecer en la lista de números impares.

8. Ciclo for

for(int n = 1; n <= num; n += 2)  

Este ciclo genera únicamente números impares.

  • int n = 1 → El contador comienza en 1.
  • n <= num → El ciclo continúa mientras n sea menor o igual al número ingresado.
  • n += 2 → Aumenta de dos en dos para obtener solo números impares (1, 3, 5, 7...).

9. Condición if

if(n != x)

Comprueba si el número generado es diferente del número que el usuario desea excluir.

Si son diferentes, el número se imprime. Si son iguales, simplemente se omite.

10. Mostrar el número

System.out.print(n + ",");

Muestra cada número impar seguido de una coma.

¿Cómo funciona el programa?

El programa solicita dos números:

  1. Un número límite (num).
  2. Un número que no debe mostrarse (x).

Después, utiliza un ciclo for que empieza en 1 y aumenta de dos en dos para generar únicamente los números impares. En cada recorrido verifica si el número actual es diferente del número a excluir mediante un if. Si es diferente, lo imprime; si es igual, lo omite.

Ejemplo de ejecución

Ingrese un número: 15
Ingrese un número a excluir: 7

Salida:

1,3,5,9,11,13,15,

Resumen

Este programa genera todos los números impares desde 1 hasta un número indicado por el usuario utilizando un ciclo for. Gracias a la condición if, puede excluir un número específico para que no aparezca en la salida.

No hay comentarios.:

Publicar un comentario

Escribir un programa que muestre por pantalla la cadena ¡Hola mundo! en Java

Código del ejercicio: package ejercicio; public class Ejercicio {     public static void main ( String [] args ) {    ...

Copyright © Ejercicios de programación. Todos los derechos reservados. ❤️