viernes, 14 de agosto de 2026

Mostrar la suma de los números pares en un rango de dos números, también sumar el rango de los números en Python

Ejemplo: si ingreso el número 10 y 23, que sume los números pares entre el 10 y 23 pero que también sume el 10 y 23.
10,11,12,13,14,15,16,17,18,19,20,21,22,23 = 135

Código del ejercicio:

num1 = int(input("Ingresar número: "))
num2 = int(input("Ingresar número: "))
sumPar = 0
n1 = num1 + 1
n2 = num2 - 1
while n1 <= n2:
    if n1 % 2 == 0:
        sumPar += n1
    n1 += 1
print(sumPar + num1 + num2)

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.
while --> el bucle while evalúa una condición y luego ejecuta un bloque de código si la condición es verdadera.
<= --> 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 modulo ( % ) devuelve el resto de la división.
== --> el operador de igualdad ( == ) regresa true si sus operandos son iguales, false en caso contrario.
+= --> el operador de asignación de suma ( += ) suma el valor del operando derecho a una variable y asigna el resultado a la variable.
print() --> imprime un mensaje en la pantalla.

Explicación del Código:

¿Qué hace el programa?

El programa solicita dos números y busca los números pares que se encuentran entre ellos. Después suma esos números pares y también agrega los dos números introducidos.

Código Python

num1 = int(input("Ingresar número: ")) num2 = int(input("Ingresar número: ")) sumPar = 0 n1 = num1 + 1 n2 = num2 - 1 while n1 <= n2: if n1 % 2 == 0: sumPar += n1 n1 += 1 print(sumPar + num1 + num2)

Explicación de cada código

num1 = int(input("Ingresar número: "))
Solicita al usuario el primer número y lo convierte a entero.
num2 = int(input("Ingresar número: "))
Solicita al usuario el segundo número y lo convierte a entero.
sumPar = 0
Crea una variable llamada sumPar que comienza en 0. Se utilizará para acumular la suma de los números pares.
n1 = num1 + 1
Hace que la búsqueda comience en el número siguiente al primer número.
n2 = num2 - 1
Establece como límite el número anterior al segundo número.
while n1 <= n2:
Repite las instrucciones mientras n1 sea menor o igual que n2.
if n1 % 2 == 0:
Comprueba si el número es par. Si el resto de dividirlo entre 2 es 0, significa que es par.
sumPar += n1
Si el número es par, lo agrega a la suma acumulada.
n1 += 1
Aumenta el valor de n1 en 1 para continuar con el siguiente número.
print(sumPar + num1 + num2)
Muestra la suma de los números pares encontrados más los dos números introducidos inicialmente.

Ejemplo

Si el usuario introduce los números 2 y 8:

Números pares dentro del rango: 4 + 6 = 10

Luego se agregan los números iniciales: 10 + 2 + 8 = 20

Resultado final: 20

jueves, 13 de agosto de 2026

Excluir de una lista, las palabras que empiecen con "L" en Python

Código del ejercicio:

lista = ['paraguas', 'Libia', 'avión', 'silla', 'lagartija', 'energía']
for x in lista:
  if x[0].lower() == 'l':
    lista.remove(x)
print(lista)

Definición de los códigos del ejercicio:

lista = [1,2,3,4] --> son variables que almacenan arrays, internamente cada posición puede ser un tipo de datos distinto.
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.
if --> use if para especificar un bloque de código que se ejecutará, si una condición especificada es verdadera.
lower() --> devuelve una cadena donde todos los caracteres están en minúsculas.
== --> el operador de igualdad ( == ) regresa true si sus operandos son iguales, false en caso contrario.
remove() --> elimina el elemento especificado.
print() --> imprime un mensaje en la pantalla.

Explicación del Código:

Este programa recorre una lista de palabras y elimina aquellas que comienzan con la letra "L" o "l".

Explicación de cada código

  • lista = [...]: Crea una lista que contiene varias palabras.
  • for x in lista:: Recorre cada palabra de la lista. La variable x representa la palabra actual.
  • x[0]: Obtiene la primera letra de la palabra.
  • .lower(): Convierte la primera letra a minúscula para poder comparar tanto "L" como "l".
  • == 'l': Comprueba si la primera letra es la letra "l".
  • lista.remove(x): Elimina de la lista la palabra que empieza con "L".
  • print(lista): Muestra la lista después de eliminar las palabras.

Código Python

lista = ['paraguas', 'Libia', 'avión', 'silla', 'lagartija', 'energía']

for x in lista:
    if x[0].lower() == 'l':
        lista.remove(x)

print(lista)

Resultado

Resultado:
['paraguas', 'avión', 'silla', 'energía']
Nota: Modificar una lista mientras se recorre con for puede ocasionar problemas si hay varios elementos consecutivos que cumplen la condición.

Mostrar la suma de los números impares en un rango de dos números, también sumar el rango de los números en Python

Ejemplo: si ingreso el número 9 y 22, que sume los números impares entre el 9 y 22 pero que también sume el 9 y 22.
9,10,11,12,13,14,15,16,17,18,19,20,21,22 = 127

Código del ejercicio:

num1 = int(input("Ingresar número: "))
num2 = int(input("Ingresar número: "))
sumImpar = 0
n1 = num1 + 1
n2 = num2 - 1
while n1 <= n2:
    if n1 % 2 != 0:
        sumImpar += n1
    n1 += 1
print(sumImpar + num1 + num2)

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.
while --> el bucle while evalúa una condición y luego ejecuta un bloque de código si la condición es verdadera.
<= --> 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 modulo ( % ) devuelve el resto de la división.
!= --> el operador de desigualdad ( != ) comprueba si sus dos operandos no son iguales y devuelve un resultado booleano.
+= --> el operador de asignación de suma ( += ) suma el valor del operando derecho a una variable y asigna el resultado a la variable.
print() --> imprime un mensaje en la pantalla.

Explicación del Código:

Programa en Python que suma los números impares que se encuentran entre dos números y luego suma también los números extremos.

num1 = int(input("Ingresar número: "))
num2 = int(input("Ingresar número: "))
sumImpar = 0
n1 = num1 + 1
n2 = num2 - 1
while n1 <= n2:
    if n1 % 2 != 0:
        sumImpar += n1
    n1 += 1
print(sumImpar + num1 + num2)

Explicación de cada código

num1 = int(input(...))

Pide al usuario que ingrese el primer número y lo convierte en un número entero.

num2 = int(input(...))

Pide al usuario que ingrese el segundo número y lo convierte en un número entero.

sumImpar = 0

Crea una variable que almacenará la suma de los números impares. Comienza con el valor 0.

n1 = num1 + 1

Hace que la búsqueda comience en el número que está después de num1.

n2 = num2 - 1

Establece como límite el número que está antes de num2.

while n1 <= n2:

Repite las instrucciones mientras n1 sea menor o igual que n2.

if n1 % 2 != 0:

Comprueba si el número es impar. El operador % obtiene el resto de una división. Si el resto al dividir entre 2 es diferente de 0, el número es impar.

sumImpar += n1

Agrega el número impar encontrado a la variable sumImpar.

n1 += 1

Aumenta n1 en 1 para continuar revisando los siguientes números.

print(sumImpar + num1 + num2)

Muestra el resultado final. Suma los números impares encontrados y también los dos números ingresados originalmente.

Ejemplo

Si el usuario ingresa:

num1 = 3

num2 = 10

Los números que están dentro del rango son:

4, 5, 6, 7, 8, 9

Los números impares son:

5 + 7 + 9 = 21

Luego se suman también los extremos: 3 + 10

Resultado final: 21 + 3 + 10 = 34

Comprobar si un número es primo en Python

Código del ejercicio:

numero = int(input("Ingresar número: "))
divisor = 1
contador = 0
while divisor <= numero:
    if numero % divisor == 0:
        contador += 1
    divisor += 1
if contador == 2:
    print("El número es primo")
else:
    print("El número no es primo")

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.
while --> el bucle while evalúa una condición y luego ejecuta un bloque de código si la condición es verdadera.
<= --> 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.
else --> use else para especificar un bloque de código a ejecutar, si la misma condición es falsa.
% --> el operador de modulo ( % ) devuelve el resto de la división.
== --> el operador de igualdad ( == ) regresa true si sus operandos son iguales, false en caso contrario.
+= --> el operador de asignación de suma ( += ) suma el valor del operando derecho a una variable y asigna el resultado a la variable.
print() --> imprime un mensaje en la pantalla.

Explicación del Código:

Este programa permite comprobar si un número es primo. Un número primo es aquel que solamente tiene dos divisores: 1 y el mismo número.

numero = int(input("Ingresar número: "))
divisor = 1
contador = 0

while divisor <= numero:
    if numero % divisor == 0:
        contador += 1
    divisor += 1

if contador == 2:
    print("El número es primo")
else:
    print("El número no es primo")

Explicación de cada código

numero = int(input("Ingresar número: ")) → Pide al usuario que ingrese un número y lo convierte a entero.
divisor = 1 → Inicializa el divisor en 1 para comenzar a comprobar los posibles divisores.
contador = 0 → Crea un contador que almacenará la cantidad de divisores encontrados.
while divisor <= numero: → Repite el proceso mientras el divisor sea menor o igual al número ingresado.
if numero % divisor == 0: → Comprueba si el número se puede dividir exactamente entre el divisor. El operador % obtiene el resto de una división.
contador += 1 → Aumenta el contador en 1 cuando encuentra un divisor exacto.
divisor += 1 → Aumenta el divisor en 1 para comprobar el siguiente número.
if contador == 2: → Comprueba si el número tiene exactamente dos divisores.
print("El número es primo") → Muestra este mensaje cuando el número tiene exactamente dos divisores.
else: → Se ejecuta cuando el número tiene una cantidad de divisores diferente de dos.
print("El número no es primo") → Muestra que el número no es primo.

Ejemplo

Si ingresamos el número 7, el programa comprueba:

7 ÷ 1 → exacta
7 ÷ 2 → no es exacta
7 ÷ 3 → no es exacta
7 ÷ 4 → no es exacta
7 ÷ 5 → no es exacta
7 ÷ 6 → no es exacta
7 ÷ 7 → exacta

El contador encuentra 2 divisores: 1 y 7. Por lo tanto, el programa muestra:

El número es primo

Crea una variable de nombre par de tipo cadena que contenga todos los números pares del 1 al 86 concatenados uno detrás de otro (tipo "24681012...") y una variable de nombre impar también de tipo cadena que contenga los impares en Python

Crea una variable de nombre par de tipo cadena que contenga todos los números pares del 1 al 86 concatenados uno detrás de otro (tipo "24681012...") y una variable de nombre impar también de tipo cadena que contenga los impares.

Pista: puedes usar el comando range(1,87)

Código del ejercicio:

par = ""
impar = ""
for i in range(1, 87):
    if i % 2 == 0:
        par += str(i)
    else:
        impar += str(i)
print(f'números pares: {par}\nnúmeros impares: {impar}')

Definición de los códigos del ejercicio:

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.
range --> es un tipo que se utiliza para representar una secuencia inmutable de números. Uno de sus principales usos es junto a la sentencia for, para definir un bucle sobre el que se itera un número determinado de veces.
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.
% --> el operador de modulo ( % ) devuelve el resto de la división.
== --> el operador de igualdad ( == ) regresa true si sus operandos son iguales, false en caso contrario.
+= --> el operador de asignación de suma ( += ) suma el valor del operando derecho a una variable y asigna el resultado a la variable.
str() --> convierte el valor especificado en una cadena.
print() --> imprime un mensaje en la pantalla.
\n --> es el carácter de salto de línea y se usa para indicar el fin de una línea de texto y el inicio de una línea nueva.
f'{}' --> un literal de cadena con formato o f-string es un literal de cadena que tiene el prefijo 'f'o 'F'. Facilita crear interpolaciones en cadenas de texto, simplificando de este modo tanto la lectura como la escritura de estas. Si quieres mostrar variables utilizando f-strings, solo tienes especificar el nombre de las variables entre llaves {}. Y al ejecutar tu código, todos los nombres de las variables serán remplazados con sus respectivos valores.

Explicación del Código:

El objetivo del ejercicio es crear una variable llamada par que contenga todos los números pares del 1 al 86 concatenados, y otra variable llamada impar que contenga todos los números impares.

Código en Python

par = ""
impar = ""

for i in range(1, 87):
    if i % 2 == 0:
        par += str(i)
    else:
        impar += str(i)

print(f'números pares: {par}\nnúmeros impares: {impar}')

Explicación del código

par = ""
Crea una cadena vacía llamada par. Aquí se guardarán todos los números pares.
impar = ""
Crea una cadena vacía llamada impar. Aquí se guardarán todos los números impares.
for i in range(1, 87):
Recorre todos los números desde 1 hasta 86. El número 87 no se incluye.
if i % 2 == 0:
Comprueba si el número es par. El operador % obtiene el resto de una división. Si el resto de dividir entre 2 es 0, el número es par.
par += str(i)
Convierte el número a texto mediante str() y lo agrega a la cadena par.
else:
Se ejecuta cuando el número no es par, es decir, cuando el número es impar.
impar += str(i)
Convierte el número impar a texto y lo agrega a la cadena impar.
print(...)
Muestra en pantalla los números pares y los números impares.
\n
Produce un salto de línea para mostrar los pares e impares en líneas separadas.

Resultado

números pares: 2468101214161820222426283032343638404244464850525456586062646668707274767880828486

números impares: 135791113151719212325272931333537394143454749515355575961636567697173757779818385

Ingresar un número máximo de 2 dígitos, si ingresa un número de 1 dígito que muestre mensaje "Tiene 1 dígito" y si tiene 2 dígitos que muestre mensaje "Tiene 2 dígitos" en Python

Código del ejercicio:

n = int(input('Ingresar número: '))
c = 0
while n >= 1:
    c += 1
    n /= 10
if c == 1:
    print('Tiene 1 dígito')
elif c == 2:
    print('Tiene 2 dígitos')
else:
    print('Por favor ingresar número máximo de 2 dígitos')

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.
while --> el bucle while evalúa una condición y luego ejecuta un bloque de código si la condición es verdadera.
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.
elif --> use else if para especificar una nueva condición para probar, si la primera condición es falsa.
>= --> el operador mayor que o igual ( >= ) devuelve true si el operando izquierdo es mayor o igual que el operando derecho, y en false caso contrario.
== --> el operador de igualdad ( == ) regresa true si sus operandos son iguales, false en caso contrario.
+= --> el operador de asignación de suma ( += ) suma el valor del operando derecho a una variable y asigna el resultado a la variable.
/= --> el operador ( /= ) divide a la variable del lado izquierdo el valor del lado derecho.
print() --> imprime un mensaje en la pantalla.

Explicación del Código:

Este ejercicio permite ingresar un número y determinar si tiene 1 dígito o 2 dígitos. Si tiene más de 2 dígitos, se muestra un mensaje indicando que se debe ingresar un número máximo de 2 dígitos.

Código en Python

n = int(input('Ingresar número: '))
c = 0
while n >= 1:
    c += 1
    n /= 10
if c == 1:
    print('Tiene 1 dígito')
elif c == 2:
    print('Tiene 2 dígitos')
else:
    print('Por favor ingresar número máximo de 2 dígitos')

Explicación de cada código

  • n = int(input(...)): Pide al usuario que ingrese un número entero y lo guarda en la variable n.
  • c = 0: Crea el contador c y comienza en cero.
  • while n >= 1: Repite las instrucciones mientras el número sea mayor o igual a 1.
  • c += 1: Aumenta el contador en 1 en cada repetición.
  • n /= 10: Divide el número entre 10 para ir reduciendo sus dígitos.
  • if c == 1: Comprueba si el contador indica que el número tiene un dígito.
  • print('Tiene 1 dígito'): Muestra el mensaje cuando el número tiene un dígito.
  • elif c == 2: Comprueba si el número tiene dos dígitos.
  • print('Tiene 2 dígitos'): Muestra el mensaje cuando el número tiene dos dígitos.
  • else: Se ejecuta cuando ninguna de las condiciones anteriores se cumple.
  • print('Por favor ingresar número máximo de 2 dígitos'): Muestra un mensaje indicando que se debe ingresar un número de máximo 2 dígitos.

Ejemplos

Número Resultado
7 Tiene 1 dígito
45 Tiene 2 dígitos
123 Por favor ingresar número máximo de 2 dígitos
Nota: El código original está pensado principalmente para números positivos. El ejercicio solicita números de máximo 2 dígitos.

Calcular la altura de una pirámide en Python

La pirámide se apila de acuerdo con un principio simple: cada capa inferior contiene un bloque más que la capa superior.
La figura ilustra la regla utilizada por los constructores:

Escribir un programa que lea la cantidad de bloques que tienen los constructores, y generar la altura de la pirámide que se puede construir utilizando estos bloques.

Nota: La altura se mide por el número de capas completas: si los constructores no tienen la cantidad suficiente de bloques y no pueden completar la siguiente capa, terminan su trabajo inmediatamente.

Código del ejercicio:

bloques = int(input("Ingrese el número de bloques: "))
altura = 0
nivel = 1
while altura < bloques:
    bloques -= nivel
    altura += 1
    nivel += 1
else:
    print("La altura de la piramide es:", altura)

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.
while --> el bucle while evalúa una condición y luego ejecuta un bloque de código si la condición es verdadera.
else --> use else para especificar un bloque de código a ejecutar, si la misma condición es falsa.
< --> 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.
-= --> el operador de asignación de resta ( -= ) resta el valor del operando derecho de una variable y asigna el resultado a la variable.
print() --> imprime un mensaje en la pantalla.
, --> concatena variables de cadena.

Explicación del Código:

Código Python

bloques = int(input("Ingrese el número de bloques: "))
altura = 0
nivel = 1

while altura < bloques:
    bloques -= nivel
    altura += 1
    nivel += 1
else:
    print("La altura de la piramide es:", altura)

Explicación de cada código

Código Función
bloques = int(input(...)) Pide al usuario la cantidad de bloques disponibles y la convierte a un número entero.
altura = 0 Comienza la altura de la pirámide en 0.
nivel = 1 Indica que el primer nivel necesita 1 bloque.
while altura < bloques: Repite las instrucciones mientras se cumpla la condición.
bloques -= nivel Resta de los bloques disponibles los bloques utilizados para construir el nivel.
altura += 1 Aumenta la altura de la pirámide en 1 nivel.
nivel += 1 Aumenta en 1 la cantidad de bloques necesarios para el siguiente nivel.
else: Indica las instrucciones que se ejecutarán cuando termine el ciclo while.
print(...) Muestra en pantalla la altura calculada de la pirámide.

Ejemplo

Si el usuario introduce 6 bloques, la pirámide puede construirse de la siguiente manera:

Nivel 1 → 1 bloque
Nivel 2 → 2 bloques
Nivel 3 → 3 bloques

Total: 1 + 2 + 3 = 6 bloques

Altura de la pirámide: 3
Importante: El código original tiene un pequeño problema lógico, porque puede aumentar la altura aunque no existan suficientes bloques para completar el siguiente nivel. Para un cálculo correcto se recomienda comprobar que los bloques disponibles sean suficientes antes de construir cada nivel.

Mostrar la suma de los números pares en un rango de dos números, también sumar el rango de los números en Python

Ejemplo: si ingreso el número 10 y 23, que sume los números pares entre el 10 y 23 pero que también sume el 10 y 23. 10,11,12,1...

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