¡Programa Java para encontrar la suma de la serie 1/1! + 2/2! + 3/3! + ……1/N!

El factorial de un número simplemente devuelve la multiplicación de ese número con todos los números menores que el número hasta 1 sobre el que se aplica el factorial. Ahora surge la pregunta de si la serie es convergente o divergente. De acuerdo con los conceptos de  serie infinita y factorial en matemáticas, la serie puede no converger pero puede contener una subsecuencia convergente.

Ilustración:

¡norte! = norte * (n-1) × (n-2) × (n-3) × (n-4) × …… × 4 × 3 × 2 × 1

Input      : n = 5
Processing : 1/1! + 2/2! + 3/3! + 4/4! + 5/5!
             1    + 2/2  + 3/6  + 4/24 + 5/120
Output     : 2.708333333333333            

Acercarse : 

  • Introduzca el número de términos N.
  • Cree una función para calcular la suma de series, por ejemplo, calcularSuma.
  • En la función de cálculo de sum(), cree una suma variable que almacene la suma total de la serie.
  • Ejecuta un bucle N veces.
  • Llame a la función factorial() para calcular el factorial de un número dado.
  • Suma de retorno.

Implementación:

Java

// Java Program to Find Sum of the Series
// 1/1! + 2/2! + 3/3! + ……1/N!
 
// Importing java generic libraries
import java.io.*;
 
class GFG {
   
    // Function(recursive) to calculate factorial
    public static double factorial(int i)
    {
        // Step1: Base case
        if (i == 1) {
            return 1;
        }
        // Step2&3: Recursion execution & call statements
        return i * factorial(i - 1);
    }
 
    // Function to calculate sum of series
    public static double calculateSum(int N)
    {
        // Store total_sum in sum
        double sum = 0;
 
        // Iteration by running a loop N times
        for (int i = 1; i <= N; i++) {
            sum = sum + ((double)i / factorial(i));
        }
 
        // Return calculated final sum
        return sum;
    }
 
    // Main driver method
    public static void main(String[] args)
    {
        /* No of terms in series
           taken inn order to show output */
        int N = 5;
 
        // Print sum of series by
        // calling function calculating sum of series
        System.out.println("The sum of series upto " + N
                           + " terms is : "
                           + calculateSum(N));
    }
}
Producción

The sum of series upto 5 terms is : 2.708333333333333

Complejidad de tiempo: O(n)

Publicación traducida automáticamente

Artículo escrito por rohanchopra96 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *