En este ejercicio de C vamos a ver cómo hacer un programa que imprima todos los números impares que se encuentren en un rango o entre dos variables proporcionadas por un usuario.

También vamos a ver lo contrario, es decir, cómo mostrar todos los números pares entre dos variables proporcionadas por el usuario.

Imprimir números pares e impares en C

Es decir, imprimir los impares o pares que se encuentren entre dos números o entre un rango.

Para ello, vamos a usar el operador módulo que nos dice el residuo de dividir a un número entre otro.

Explicación del algoritmo

Simplemente tenemos que pedir al usuario el inicio y el fin. Después hacemos un ciclo desde inicio hasta fin; en cada iteración o paso comprobamos si el paso en que vamos (denotado por x) es par o impar, si cumple la condición lo imprimimos.

Recuerda que ya expliqué en otro post cómo saber si un número es par o impar en C.

Imprimir números impares en rango con C

Veamos el primer acercamiento, en este caso imprimimos todos los impares. El código fuente queda así:

#include <stdio.h>

int main(void) {
  int inicio, fin;
  printf("Inicio:\n");
  scanf("%d", &inicio);
  printf("Fin:\n");
  scanf("%d", &fin);
  for (int x = inicio; x <= fin; x++) {
    if (x % 2 != 0) {
      printf("%d,", x);
    }
  }
  return 0;
}

La comprobación está en la línea 10, si es impar, se imprime con printf.

Imprimir números pares con C

Ahora veamos el otro caso en donde los números impresos deben ser pares. El código queda así:

#include <stdio.h>

int main(void) {
  int inicio, fin;
  printf("Inicio:\n");
  scanf("%d", &inicio);
  printf("Fin:\n");
  scanf("%d", &fin);
  for (int x = inicio; x <= fin; x++) {
    if (x % 2 == 0) {
      printf("%d,", x);
    }
  }
  return 0;
}

Como ves simplemente se cambia el if para ver si x es par.

Si el post ha sido de tu agrado te invito a que me sigas para saber cuando haya escrito un nuevo post, haya actualizado algún sistema o publicado un nuevo software. Facebook | X | Instagram | Telegram | También estoy a tus órdenes para cualquier contratación en mi página de contacto