viernes, 7 de agosto de 2026

Mostrar los n primeros números de la siguiente serie: 1,3,9,11,33,35,105,107,... en Python

Código del ejercicio:

n = int(input('Ingresar número: '))
c = 1
vi = 1
while c <= n:
    if c != 1:
        if c % 2 == 0:
            vi = vi + 2
        else:
            vi = vi * 3
    print(vi, end=",")
    c = c + 1

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.
!= --> el operador de desigualdad ( != ) comprueba si sus dos operandos no son iguales y devuelve un resultado booleano.
end --> el parámetro end se usa para agregar una cadena a la salida de print() cuando se realiza la impresión de una declaración. Pero, ¿alguna vez se preguntó por qué después de cada declaración de impresión, el cursor se mueve a la siguiente línea? Esto se debe a que la declaración de impresión viene con un valor predeterminado de parámetro final que es '\n'.
% --> 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.
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.
print() --> imprime un mensaje en la pantalla.

Explicación del Código:

Ejercicio: Mostrar los n primeros números de la siguiente serie: 1, 3, 9, 11, 33, 35, 105, 107, ...

Código:

n = int(input('Ingresar número: '))
c = 1
vi = 1

while c <= n:
    if c != 1:
        if c % 2 == 0:
            vi = vi + 2
        else:
            vi = vi * 3

    print(vi, end=",")
    c = c + 1

Explicación de cada código

n = int(input('Ingresar número: '))

Pide al usuario que ingrese la cantidad de números que quiere mostrar y convierte el dato a un número entero.

c = 1

Crea el contador c y comienza en 1. Sirve para saber qué número de la serie se está generando.

vi = 1

Guarda el valor inicial de la serie. El primer número es 1.

while c <= n:

Repite el proceso mientras el contador c sea menor o igual que n. De esta manera se muestran los primeros n números.

if c != 1:

Comprueba que no estemos generando el primer número. Esto permite mostrar el 1 inicial sin modificarlo.

if c % 2 == 0:

Comprueba si el contador c es par. El operador % obtiene el residuo de una división. Si el residuo es 0, significa que el número es par.

vi = vi + 2

Cuando c es par, se suman 2 al valor anterior. Por ejemplo: 1 + 2 = 3 y luego 9 + 2 = 11.

else:

Se ejecuta cuando c no es par, es decir, cuando c es impar.

vi = vi * 3

Cuando el contador es impar, se multiplica el valor anterior por 3. Por ejemplo: 3 × 3 = 9 y 11 × 3 = 33.

print(vi, end=",")

Muestra en pantalla el valor actual de vi. end="," hace que después de cada número aparezca una coma y que los números se mantengan en la misma línea.

c = c + 1

Aumenta el contador en 1 para pasar a la siguiente posición de la serie.

¿Cómo se genera la serie?

La serie alterna dos operaciones:

  • Se suma 2.
  • Se multiplica por 3.

Por eso obtenemos:

1 → 3 → 9 → 11 → 33 → 35 → 105 → 107 → ...

Por ejemplo, si el usuario ingresa 8, el programa mostrará los primeros 8 números:

1,3,9,11,33,35,105,107,

No hay comentarios.:

Publicar un comentario

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