Skip to content
Related Articles

Related Articles

Improve Article

Program to get the Sum of series: 1 – x^2/2! + x^4/4! -…. upto nth term

  • Difficulty Level : Basic
  • Last Updated : 31 Mar, 2021

This is a mathematical series program where a user must enter the number of terms up to which the sum of the series is to be found. Following this, we also need the value of x, which forms the base of the series. 

Examples: 

Input : x = 9, n = 10
Output : -5.1463

Input : x = 5, n = 15
Output : 0.2837

Simple approach : 
We use two nested loops to compute factorial and use power function to compute power.

C




// C program to get the sum of the series
#include <math.h>
#include <stdio.h>
 
// Function to get the series
double Series(double x, int n)
{
    double sum = 1, term = 1, fct, j, y = 2, m;
 
    // Sum of n-1 terms starting from 2nd term
    int i;
    for (i = 1; i < n; i++) {
        fct = 1;
        for (j = 1; j <= y; j++) {
            fct = fct * j;
        }
        term = term * (-1);
        m = term * pow(x, y) / fct;
        sum = sum + m;
        y += 2;
    }
    return sum;
}
 
// Driver Code
int main()
{
    double x = 9;
    int n = 10;
    printf("%.4f", Series(x, n));
    return 0;
}

Java




// Java program to get the sum of the series
import java.io.*;
 
class MathSeries {
 
    // Function to get the series
    static double Series(double x, int n)
    {
        double sum = 1, term = 1, fct, j, y = 2, m;
 
       // Sum of n-1 terms starting from 2nd term
        int i;
        for (i = 1; i < n; i++) {
            fct = 1;
            for (j = 1; j <= y; j++) {
                fct = fct * j;
            }
            term = term * (-1);
            m = Math.pow(x, y) / fct;
            m = m * term;
            sum = sum + m;
            y += 2;
        }
        return sum;
    }
 
    // Driver Code
    public static void main(String[] args)
    {
        double x = 3;
        int n = 4;
        System.out.println(Math.round(Series(x, n) *
                                10000.0) / 10000.0);
    }
}

Python3




# Python3 code to get the sum of the series
import math
 
# Function to get the series
def Series( x , n ):
    sum = 1
    term = 1
    y = 2
     
    # Sum of n-1 terms starting from 2nd term
    for i in range(1,n):
        fct = 1
        for j in range(1,y+1):
            fct = fct * j
         
        term = term * (-1)
        m = term * math.pow(x, y) / fct
        sum = sum + m
        y += 2
     
    return sum
 
# Driver Code
x = 9
n = 10
print('%.4f'% Series(x, n))
 
# This code is contributed by "Sharad_Bhardwaj".

C#




// C# program to get the sum of the series
using System;
 
class GFG {
 
    // Function to get the series
    static double Series(double x, int n)
    {
        double sum = 1, term = 1, fct, j, y = 2, m;
 
    // Sum of n-1 terms starting from 2nd term
        int i;
        for (i = 1; i < n; i++) {
            fct = 1;
            for (j = 1; j <= y; j++) {
                fct = fct * j;
            }
            term = term * (-1);
            m = Math.Pow(x, y) / fct;
            m = m * term;
            sum = sum + m;
            y += 2;
        }
        return sum;
    }
 
    // Driver Code
    public static void Main()
    {
        double x = 9;
        int n = 10;
        Console.Write(Series(x, n) *
                            10000.0 / 10000.0);
    }
}
 
// This code is contributed by vt_m.

PHP




<?php
// PHP program to get the
// sum of the series
 
// Function to get the series
function Series($x, $n)
{
    $sum = 1; $term = 1;
    $fct; $j; $y = 2; $m;
 
    // Sum of n-1 terms starting
    // from 2nd term
    for ($i = 1; $i < $n; $i++)
    {
        $fct = 1;
        for ($j = 1; $j <= $y; $j++)
        {
            $fct = $fct * $j;
        }
        $term = $term * (-1);
        $m = $term * pow($x, $y) / $fct;
        $sum = $sum + $m;
        $y += 2;
    }
    return $sum;
}
 
// Driver Code
$x = 9;
$n = 10;
$precision = 4;
echo substr(number_format(Series($x, $n),
            $precision + 1, '.', ''), 0, -1);
 
// This code is contributed by Ajit.
?>

Javascript




<script>
 
// Javascript program to get the sum of the series
 
// Function to get the series
function Series(x, n)
{
    let sum = 1, term = 1, fct, j, y = 2, m;
 
    // Sum of n-1 terms starting from 2nd term
    let i;
    for(i = 1; i < n; i++)
    {
        fct = 1;
        for(j = 1; j <= y; j++)
        {
            fct = fct * j;
        }
        term = term * (-1);
        m = term * Math.pow(x, y) / fct;
        sum = sum + m;
        y += 2;
    }
    return sum;
}
 
// Driver Code
let x = 9;
let n = 10;
 
document.write(Series(x, n).toFixed(4));
 
// This code is contributed by Surbhi Tyagi.
 
</script>

Output: 

-5.1463

 
Efficient approach : 
We can avoid inner loop and use of power function by using values computed in previous iteration.



C++




// C++ program to get the sum of the series
#include <math.h>
#include <stdio.h>
 
// Function to get the series
double Series(double x, int n)
{
    double sum = 1, term = 1, fct = 1, p = 1, multi = 1;
     
    // Computing sum of remaining n-1 terms.
    for (int i = 1; i < n; i++) {
        fct = fct * multi * (multi+1);
        p = p*x*x;
        term = (-1) * term;       
        multi += 2;
        sum = sum + (term * p)/fct;
    }
    return sum;
}
 
// Driver Code
int main()
{
    double x = 9;
    int n = 10;
    printf("%.4f", Series(x, n));
    return 0;
}

Java




// Java program to get
// the sum of the series
import java.io.*;
 
class GFG {
     
    // Function to get
    // the series
    static double Series(double x, int n)
    {
        double sum = 1, term = 1, fct = 1;
        double p = 1, multi = 1;
         
        // Computing sum of remaining
        // n-1 terms.
        for (int i = 1; i < n; i++)
        {
            fct = fct * multi * (multi + 1);
            p = p * x * x;
            term = (-1) * term;    
            multi += 2;
            sum = sum + (term * p) / fct;
        }
        return sum;
    }
     
    // Driver Code
    public static void main(String args[])
    {
        double x = 9;
        int n = 10;
        System.out.printf("%.4f", Series(x, n));
    }
}
 
// This code is contributed by Nikita Tiwari.

Python3




# Python3 code to get the sum of the series
 
# Function to get the series
def Series(x, n):
    sum = 1
    term = 1
    fct = 1
    p = 1
    multi = 1
     
    # Computing sum of remaining n-1 terms.
    for i in range(1, n):
        fct = fct * multi * (multi+1)
        p = p*x*x
        term = (-1) * term
        multi += 2
        sum = sum + (term * p)/fct
     
    return sum
 
# Driver Code
x = 9
n = 10
print('%.4f'% Series(x, n))
 
# This code is contributed by "Sharad_Bhardwaj".

C#




// C# program to get
// the sum of the series
using System;
 
class GFG {
     
    // Function to get
    // the series
    static float Series(double x, int n)
    {
        double sum = 1, term = 1, fct = 1;
        double p = 1, multi = 1;
         
        // Computing sum of remaining
        // n-1 terms.
        for (int i = 1; i < n; i++)
        {
            fct = fct * multi * (multi + 1);
            p = p * x * x;
            term = (-1) * term;
            multi += 2;
            sum = sum + (term * p) / fct;
        }
        return (float)sum;
    }
     
    // Driver Code
    public static void Main()
    {
        double x = 9;
        int n = 10;
        Console.Write(Series(x, n));
    }
}
 
// This code is contributed by vt_m.

PHP




<?php
// PHP program to get
// the sum of the series
 
// Function to get the series
function Series($x, $n)
{
    $sum = 1; $term = 1; $fct = 1;
    $p = 1; $multi = 1;
     
    // Computing sum of
    // remaining n-1 terms.
    for ($i = 1; $i < $n; $i++)
    {
        $fct = $fct * $multi *
                 ($multi + 1);
        $p = $p * $x * $x;
        $term = (-1) * $term;
        $multi += 2;
        $sum = $sum + ($term * $p)
                           / $fct;
    }
    return $sum;
}
 
// Driver Code
$x = 9;
$n = 10;
$precision = 4;
echo substr(number_format(Series($x, $n),
            $precision + 1, '.', ''), 0, -1);
 
// This code is contributed by Ajit.
?>

Javascript




<script>
// Javascript program to get
// the sum of the series
 
    // Function to get
    // the series
    function Series(x , n) {
        var sum = 1, term = 1, fct = 1;
        var p = 1, multi = 1;
 
        // Computing sum of remaining
        // n-1 terms.
        for (let i = 1; i < n; i++) {
            fct = fct * multi * (multi + 1);
            p = p * x * x;
            term = (-1) * term;
            multi += 2;
            sum = sum + (term * p) / fct;
        }
        return sum;
    }
 
    // Driver Code
     
        var x = 9;
        var n = 10;
         document.write(Series(x, n).toFixed(4));
 
// This code is contributed by Amit Katiyar
</script>

Output: 

-5.1463

 

Attention reader! Don’t stop learning now. Get hold of all the important mathematical concepts for competitive programming with the Essential Maths for CP Course at a student-friendly price. To complete your preparation from learning a language to DS Algo and many more,  please refer Complete Interview Preparation Course.




My Personal Notes arrow_drop_up
Recommended Articles
Page :