martes, 14 de julio de 2026

Contar la cantidad de dígitos pares e impares que tiene un número natural en Python

Código del ejercicio:

x = int(input("Ingrese un número natural: "))
pares = 0
impares = 0
if x >= 0:
  while x > 0:
    digito = x % 10
    if digito % 2 == 0:
      pares += 1
    else:
      impares += 1
    x = x // 10
  print("La cantidad de digitos pares son:", pares)
  print("La cantidad de digitos impares son:", impares)
else:
  print("Por favor ingresa un número natural")

Definición de los códigos del ejercicio:

int() --> convierte el valor especificado en un número entero.
input() --> permite obtener texto escrito por teclado.
if --> use if para especificar un bloque de código que se ejecutará, si una condición especificada es verdadera.
else --> use else para especificar un bloque de código a ejecutar, si la misma condición es falsa.
while --> el bucle while evalúa una condición y luego ejecuta un bloque de código si la condición es verdadera.
for --> el bucle for se utiliza para recorrer los elementos de un objeto iterable (lista, tupla, conjunto, diccionario, …) y ejecutar un bloque de código.
in --> el operador in devuelve True si el valor se encuentra en una secuencia; False en caso contrario.
<= --> el operador menor o igual ( <= ) devuelve true si el operando izquierdo es menor o igual que el operando derecho, y en false caso contrario.
< --> el operador menor que ( < ) devuelve true si el operando izquierdo es menor que el operando derecho.
+= --> el operador de asignación de suma ( += ) suma el valor del operando derecho a una variable y asigna el resultado a la variable.
// --> también conocido como operador de división de piso, es un operador de división que proporciona un número entero como salida y descarta el resto.
> --> el operador mayor que ( > ) devuelve true si el operando izquierdo es mayor que el operando derecho.
isnumeric() --> devuelve True si todos los caracteres son numéricos (0-9), de lo contrario, False.
len() --> devuelve el número de elementos de un objeto.
print() --> imprime un mensaje en la pantalla.
, --> concatena variables de cadena.

Explicación del Código:

Código en Python

x = int(input("Ingrese un número natural: ")) pares = 0 impares = 0 if x >= 0: while x > 0: digito = x % 10 if digito % 2 == 0: pares += 1 else: impares += 1 x = x // 10 print("La cantidad de dígitos pares son:", pares) print("La cantidad de dígitos impares son:", impares) else: print("Por favor ingresa un número natural")

Explicación simple del código

Código Explicación
x = int(input("Ingrese un número natural: ")) Solicita al usuario un número natural y lo guarda en la variable x.
pares = 0 Crea un contador para llevar la cantidad de dígitos pares.
impares = 0 Crea un contador para llevar la cantidad de dígitos impares.
if x >= 0: Comprueba que el número ingresado sea un número natural (mayor o igual a cero).
while x > 0: Repite el proceso mientras el número tenga dígitos por revisar.
digito = x % 10 Obtiene el último dígito del número usando el operador módulo (%).
if digito % 2 == 0: Verifica si el dígito es par.
pares += 1 Si el dígito es par, aumenta en uno el contador de pares.
else: Si el dígito no es par, significa que es impar.
impares += 1 Aumenta en uno el contador de dígitos impares.
x = x // 10 Elimina el último dígito del número para continuar con el siguiente.
print("La cantidad de dígitos pares son:", pares) Muestra cuántos dígitos pares tiene el número.
print("La cantidad de dígitos impares son:", impares) Muestra cuántos dígitos impares tiene el número.
else: Se ejecuta si el número ingresado es negativo.
print("Por favor ingresa un número natural") Informa al usuario que debe ingresar un número natural.

Resumen del funcionamiento

El programa solicita un número natural. Luego revisa cada uno de sus dígitos comenzando por el último. Si el dígito es par, aumenta el contador de números pares; si es impar, aumenta el contador de números impares. Al finalizar, muestra cuántos dígitos pares e impares tiene el número ingresado. Si el usuario introduce un número negativo, muestra un mensaje indicando que debe ingresar un número natural.

Código del ejercicio: Otra forma de hacer

x = input("Ingrese un número natural: ")
pares = 0
impares = 0
for digito in x:
  if int(digito) % 2 == 0:
    pares += 1
  else:
    impares += 1
print("La cantidad de digitos pares son:", pares)
print("La cantidad de digitos impares son:", impares)

Definición de los códigos del ejercicio:

int() --> convierte el valor especificado en un número entero.
input() --> permite obtener texto escrito por teclado.
if --> use if para especificar un bloque de código que se ejecutará, si una condición especificada es verdadera.
else --> use else para especificar un bloque de código a ejecutar, si la misma condición es falsa.
while --> el bucle while evalúa una condición y luego ejecuta un bloque de código si la condición es verdadera.
for --> el bucle for se utiliza para recorrer los elementos de un objeto iterable (lista, tupla, conjunto, diccionario, …) y ejecutar un bloque de código.
in --> el operador in devuelve True si el valor se encuentra en una secuencia; False en caso contrario.
<= --> el operador menor o igual ( <= ) devuelve true si el operando izquierdo es menor o igual que el operando derecho, y en false caso contrario.
< --> el operador menor que ( < ) devuelve true si el operando izquierdo es menor que el operando derecho.
+= --> el operador de asignación de suma ( += ) suma el valor del operando derecho a una variable y asigna el resultado a la variable.
// --> también conocido como operador de división de piso, es un operador de división que proporciona un número entero como salida y descarta el resto.
> --> el operador mayor que ( > ) devuelve true si el operando izquierdo es mayor que el operando derecho.
isnumeric() --> devuelve True si todos los caracteres son numéricos (0-9), de lo contrario, False.
len() --> devuelve el número de elementos de un objeto.
print() --> imprime un mensaje en la pantalla.
, --> concatena variables de cadena.

Explicación del Código:

Código

x = input("Ingrese un número natural: ")
pares = 0
impares = 0

for digito in x:
    if int(digito) % 2 == 0:
        pares += 1
    else:
        impares += 1

print("La cantidad de digitos pares son:", pares)
print("La cantidad de digitos impares son:", impares)

Explicación paso a paso

1. Solicitar un número al usuario

x = input("Ingrese un número natural: ")

Se pide al usuario que escriba un número natural. El número se guarda como texto para poder recorrer cada uno de sus dígitos.
2. Crear los contadores

pares = 0
impares = 0

Se crean dos variables:
  • pares: contará cuántos dígitos pares hay.
  • impares: contará cuántos dígitos impares hay.
Al inicio ambas valen 0.
3. Recorrer cada dígito

for digito in x:

El ciclo for recorre uno por uno todos los caracteres del número ingresado. Por ejemplo, si el usuario escribe 48275, el ciclo recorrerá:
  • 4
  • 8
  • 2
  • 7
  • 5
4. Convertir el dígito a número

int(digito)

Cada dígito se convierte de texto a número para poder realizar operaciones matemáticas.
5. Verificar si el dígito es par

if int(digito) % 2 == 0:

Se utiliza el operador % (módulo), que obtiene el residuo de una división entre 2.
  • Si el residuo es 0, el dígito es par.
  • Si el residuo es distinto de 0, el dígito es impar.
6. Aumentar el contador correspondiente

Si el dígito es par:
pares += 1
Se suma uno al contador de dígitos pares. Si el dígito es impar:
impares += 1
Se suma uno al contador de dígitos impares.
7. Mostrar los resultados

print("La cantidad de digitos pares son:", pares)
print("La cantidad de digitos impares son:", impares)
Al finalizar el recorrido, se muestran la cantidad de dígitos pares y la cantidad de dígitos impares que tiene el número ingresado.

Ejemplo de ejecución

Ingrese un número natural: 48275

La cantidad de digitos pares son: 3
La cantidad de digitos impares son: 2

Resumen

  • Se solicita un número natural.
  • Se crean dos contadores: uno para pares y otro para impares.
  • Se recorre cada dígito del número.
  • Cada dígito se convierte a entero.
  • Con el operador % se verifica si es par o impar.
  • Se incrementa el contador correspondiente.
  • Al final se muestran las cantidades de dígitos pares e impares.

No hay comentarios.:

Publicar un comentario

Sumar todos los dígitos de un número natural en Python

Código del ejercicio: x = int ( input ( "Ingrese un número natural: " )) sumador = 0 while (x > 0 ):   digito = x %...

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