Suma de una serie numérica especial

PythonPythonBeginner
Practicar Ahora

💡 Este tutorial está traducido por IA desde la versión en inglés. Para ver la versión original, puedes hacer clic aquí

Introducción

En este proyecto, aprenderás a calcular la suma de los primeros N (N >= 6) términos de una serie numérica especial. Esta serie está definida por el siguiente patrón:

\frac{2}{1} + \frac{3}{2} + \frac{5}{3} + \frac{8}{5} + \frac{13}{8} + \frac{21}{13} +...

Los numeradores de esta serie son los números de Fibonacci (2, 3, 5, 8, 13, 21,...), y los denominadores también son los números de Fibonacci (1, 2, 3, 5, 8, 13,...).

👀 Vista previa

$ python3 sum_fib.py
Ingrese el valor de n: 6
Suma de la serie especial: 10.00705

$ python3 sum_fib.py
Ingrese el valor de n: 20
Suma de la serie especial: 32.66026

$ python3 sum_fib.py
Ingrese el valor de n: 45
Suma de la serie especial: 73.11111

🎯 Tareas

En este proyecto, aprenderás:

  • Cómo entender el enunciado del problema y los requisitos del proyecto
  • Cómo implementar la función sum_fib para calcular la suma de los primeros N términos de la serie numérica
  • Cómo probar la función sum_fib ejecutando el script sum_fib.py
  • Cómo explicar la lógica detrás de la función sum_fib y la serie numérica de Fibonacci subyacente

🏆 Logros

Después de completar este proyecto, serás capaz de:

  • Entender y resolver problemas relacionados con series numéricas y secuencias matemáticas
  • Implementar funciones para realizar cálculos en series numéricas complejas
  • Probar y validar tu código para asegurarte de que cumpla con los requisitos del proyecto
  • Explicar la lógica detrás de tus soluciones y los conceptos matemáticos subyacentes

Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL python(("Python")) -.-> python/BasicConceptsGroup(["Basic Concepts"]) python(("Python")) -.-> python/ControlFlowGroup(["Control Flow"]) python(("Python")) -.-> python/FunctionsGroup(["Functions"]) python(("Python")) -.-> python/PythonStandardLibraryGroup(["Python Standard Library"]) python/BasicConceptsGroup -.-> python/variables_data_types("Variables and Data Types") python/BasicConceptsGroup -.-> python/numeric_types("Numeric Types") python/ControlFlowGroup -.-> python/conditional_statements("Conditional Statements") python/ControlFlowGroup -.-> python/for_loops("For Loops") python/FunctionsGroup -.-> python/function_definition("Function Definition") python/PythonStandardLibraryGroup -.-> python/math_random("Math and Random") subgraph Lab Skills python/variables_data_types -.-> lab-302776{{"Suma de una serie numérica especial"}} python/numeric_types -.-> lab-302776{{"Suma de una serie numérica especial"}} python/conditional_statements -.-> lab-302776{{"Suma de una serie numérica especial"}} python/for_loops -.-> lab-302776{{"Suma de una serie numérica especial"}} python/function_definition -.-> lab-302776{{"Suma de una serie numérica especial"}} python/math_random -.-> lab-302776{{"Suma de una serie numérica especial"}} end

Entender el problema

En este paso, aprenderás sobre el enunciado del problema y los requisitos del proyecto.

El problema consiste en calcular la suma de los primeros N (N >= 6) términos de la siguiente serie numérica:

\frac{2}{1} + \frac{3}{2} + \frac{5}{3} + \frac{8}{5} + \frac{13}{8} + \frac{21}{13} +...

Los requisitos son:

  1. Completar la función sum_fib en el archivo sum_fib.py para calcular la suma de los primeros N términos.
  2. El resultado de la salida debe redondearse a cinco lugares decimales.

Implementar la función sum_fib

En este paso, implementarás la función sum_fib para calcular la suma de los primeros N términos de la serie numérica dada.

  1. Abre el archivo sum_fib.py ubicado en el directorio /home/labex/project.
  2. Implementa la función sum_fib de la siguiente manera:
def sum_fib(n):
    if n <= 0:
        return 0.0

    numerador = 2
    denominador = 1
    total = 0.0

    for _ in range(n):
        total += numerador / denominador
        numerador, denominador = numerador + denominador, numerador

    return round(total, 5)

La función sum_fib toma un entero n como entrada, que representa el número de términos que se van a sumar. La función inicializa las variables numerador y denominador con los primeros dos términos de la serie, y luego itera n veces, sumando la razón del numerador y denominador actual a la variable total. Finalmente, la función devuelve el total redondeado a cinco lugares decimales.

Probar la función sum_fib

En este paso, probarás la función sum_fib ejecutando el script sum_fib.py y proporcionando diferentes valores de n.

  1. Al final del archivo sum_fib.py, agrega el siguiente código para probar la implementación:
if __name__ == "__main__":
    n = int(input("Ingrese el valor de n: "))
    result = sum_fib(n)
    print("Suma de la serie especial:", result)
  1. Abre una terminal y navega hasta el directorio /home/labex/project.
  2. Ejecuta el script sum_fib.py usando el siguiente comando:
python3 sum_fib.py
  1. Cuando se te solicite, ingresa el valor de n (por ejemplo, 6, 20, 45) y presiona Enter.
  2. El script mostrará la suma de los primeros n términos de la serie numérica, redondeada a cinco lugares decimales.

Salida de ejemplo:

Ingrese el valor de n: 6
Suma de la serie especial: 10.00705

Ingrese el valor de n: 20
Suma de la serie especial: 32.66026

Ingrese el valor de n: 45
Suma de la serie especial: 73.11111

Verifica que la salida coincida con los resultados esperados.

¡Felicitaciones! Has completado con éxito el proyecto "Suma de una serie numérica especial".

✨ Revisar Solución y Practicar

Resumen

¡Felicitaciones! Has completado este proyecto. Puedes practicar más laboratorios en LabEx para mejorar tus habilidades.