Open In App

Program to find the sum of a Series 1/1! + 2/2! + 3/3! + 4/4! +.......+ n/n!

Last Updated : 16 Feb, 2023
Comments
Improve
Suggest changes
Like Article
Like
Report

You have been given a series 1/1! + 2/2! + 3/3! + 4/4! +.......+ n/n!, find out the sum of the series till nth term.
Examples : 
 

Input :n = 5
Output : 2.70833

Input :n = 7
Output : 2.71806


 


A simple solution is to one by one computer terms. For every term, find its corresponding factorial value.
An efficient solution is to do factorial computations in same loop.
 

CPP
// CPP program to print 
// the sum of series
#include<bits/stdc++.h>
using namespace std;

// function to calculate
// sum of given series
double sumOfSeries(double num)
{
    double res = 0, fact = 1;
    for (int i = 1; i <= num; i++)
    {
        // fact variable store 
        // factorial of the i
        fact = fact * i;

        res = res + (i / fact);
    }
    return(res);
}

// Driver Code
int main()
{
    double n = 5;
    cout << "Sum: " << sumOfSeries(n);
    return 0;
}
Java
// Java program to print
// the sum of series

import java.io.*;
import java.lang.*;

class GFG
{
    public static double sumOfSeries(double num)
    {
        double res = 0, fact = 1;
        for (int i = 1; i <= num; i++)
        {
            // fact variable store
            // factorial of the i
            fact = fact * i;

            res = res + (i / fact);
        }
        return(res);
    }

    // Driver Code
    public static void main (String[] args)
    {
        double n = 5;
        System.out.println("Sum: " + sumOfSeries(n));
    }
}

// This code is contributed by 
// Mohit Gupta_OMG <(0_o)>
Python3
# Python code to find smallest K-digit  
# number divisible by X

def sumOfSeries(num):
    
    # Computing MAX
    res = 0
    fact = 1
    
    for i in range(1, num+1):
        fact *= i
        res = res + (i/ fact)
        
    return res
    

n = 5
print("Sum: ", sumOfSeries(n))

# Code contributed by 
# Mohit Gupta_OMG <(0_o)>
C#
// C# program to print the sum of series
using System;

class GFG
{
    public static float sumOfSeries(double num)
    {
        float res = 0, fact = 1;
        for (int i = 1; i <= num; i++)
        {
            // fact variable store 
            // factorial of the i
            fact = fact * i;

            res = res + (i / fact);
        }
        return(res);
    }

    // Driver Code
    public static void Main ()
    {
        double n = 5;
        Console.Write("Sum: " + sumOfSeries(n));
    }
}

// This code is contributed by vt_m.
PHP
<?php
// PHP program to print
// the sum of series

// Function to calculate 
// sum of given series
function sumOfSeries($num)
{
    $res = 0; $fact = 1;
    for ($i = 1; $i <= $num; $i++)
    {
        // fact variable store 
        // factorial of the i
        $fact = $fact * $i;

        $res = $res + ($i / $fact);
    }
    return ($res);
}

// Driver Code
$n = 5;
echo("Sum: " . sumOfSeries($n));

// This code is contributed by Ajit.
?>
JavaScript
<script>
// javascript program to print
// the sum of series   
function sumOfSeries(num)
{
    var res = 0, fact = 1;
    for (i = 1; i <= num; i++)
    {
    
        // fact variable store
        // factorial of the i
        fact = fact * i;
        res = res + (i / fact);
    }
    return(res);
}

// Driver Code
var n = 5;
document.write("Sum: " + sumOfSeries(n).toFixed(5));

// This code is contributed by Amit Katiyar 
</script>

Output: 
 

Sum: 2.70833


Time Complexity: O(n)

Auxiliary Space: O(1), since no extra space has been taken.
 


Similar Reads