Suma de los primeros N términos de la serie 5,12, 23, 38….

Dado un número N, la tarea es encontrar la suma de los primeros N términos de la siguiente serie:
 

Sn = 5 + 12 + 23 + 38 + … hasta n términos

Ejemplos: 
 

Input: N = 2
Output: 17
5 + 12
= 17

Input: N = 4 
Output: 80
5 + 12 + 23 + 38
= 78

Enfoque: Sea, el término n-ésimo sea denotado por tn. 
Este problema puede resolverse fácilmente con la ayuda de una fórmula general para este tipo de series.
La serie anterior es una serie cuadrática. Son especiales porque la diferencia de términos consecutivos de esta serie estará en progresión aritmética. 
Su fórmula general está dada por: 
 

General Formula = a*(n^2) + b*n + c

Ahora, al poner los primeros 3 términos de la serie en la fórmula general, podemos obtener los valores de a, b y c. 
 

Sn = 5 + 12 + 30 + 68 + ......
tn = 2 * (n^2) + n + 2
Sn = 2 * (n * (n+1) * (2 * n+1)/6) + n * (n+1)/2 + 2 * (n)

A continuación se muestra la implementación del enfoque anterior: 
 

C++

// C++ program to find sum of first n terms
#include <bits/stdc++.h>
using namespace std;
 
// Function to calculate the sum
int calculateSum(int n)
{
 
    return 2 * (n * (n + 1) * (2 * n + 1) / 6)
               + n * (n + 1) / 2 + 2 * (n);
}
 
// Driver code
int main()
{
    // number of terms to be included in sum
    int n = 3;
 
    // find the Sn
    cout << "Sum = " << calculateSum(n);
 
    return 0;
}

Java

// Java program to find sum of first n terms
 
import java.io.*;
 
class GFG {
 
// Function to calculate the sum
 static int calculateSum(int n)
{
 
    return 2 * (n * (n + 1) * (2 * n + 1) / 6)
            + n * (n + 1) / 2 + 2 * (n);
}
 
// Driver code
 
    public static void main (String[] args) {
        // number of terms to be included in sum
    int n = 3;
 
    // find the Sn
    System.out.print( "Sum = " + calculateSum(n));
    }
}
// This code is contributed
// by  anuj_67..

Python 3

# Python program to find
# sum of first n terms
 
# Function to calculate the sum
def calculateSum(n) :
 
    return (2 * (n * (n + 1) *
           (2 * n + 1) // 6) + n *
           (n + 1) // 2 + 2 * (n))
         
# Driver code    
if __name__ == "__main__" :
 
    # number of terms to be
    # included in sum
    n = 3
 
    # find the Sn
    print("Sum =",calculateSum(n))
 
# This code is contributed by ANKITRAI1

C#

// C# program to find sum
// of first n terms
using System;
 
class GFG
{
 
// Function to calculate the sum
static int calculateSum(int n)
{
 
    return 2 * (n * (n + 1) * (2 * n + 1) / 6) +
                n * (n + 1) / 2 + 2 * (n);
}
 
// Driver code
public static void Main ()
{
    // number of terms to be
    // included in sum
    int n = 3;
     
    // find the Sn
    Console.WriteLine("Sum = " + calculateSum(n));
}
}
 
// This code is contributed
// by Shashank

PHP

<?php
// PHP program to find sum
// of first n terms
 
// Function to calculate the sum
function calculateSum($n)
{
 
    return 2 * ($n * ($n + 1) *
            (2 * $n + 1) / 6) +
                $n * ($n + 1) /
                2 + 2 * ($n);
}
 
// Driver code
 
// number of terms to
// be included in sum
$n = 3;
 
// find the Sn
echo "Sum = " . calculateSum($n);
 
// This code is contributed
// by ChitraNayal
?>

Javascript

<script>
 
// Javascript program to find sum of first n terms
 
// Function to calculate the sum
function calculateSum(n)
{
 
    return 2 * (n * (n + 1) * (2 * n + 1) / 6)
            + n * (n + 1) / 2 + 2 * (n);
}
 
// Driver code
    // number of terms to be included in sum
    let n = 3;
 
    // find the Sn
    document.write("Sum = " + calculateSum(n));
 
 
// This code is contributed by Mayank Tyagi
 
</script>
Producción: 

Sum = 40

 

Complejidad de tiempo: O(1), el código se ejecutará en un tiempo constante.
Espacio auxiliar: O(1), no se requiere espacio adicional, por lo que es una constante.

Publicación traducida automáticamente

Artículo escrito por Shashank_Sharma 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 *