Suma de la serie suma de los primeros N números naturales

Dado un número natural n , encuentre la suma de la serie suma del primer N número natural.

Serie-suma : es la suma de los primeros N números naturales, es decir, la serie-suma de 5 es 15 (1 + 2 + 3 + 4 + 5).
 

Número natural 1 2 3 4 5 6
Suma de números naturales (suma-serie) 1 3 6 10 15 21
Suma de series de suma 1 4 10 20 35 56

Ejemplo: 

Entrada: N = 5 
Salida: 35 
Explicación: 
La suma de la serie suma de {1, 2, 3, 4, 5} es decir, {1 + 3 + 6 + 10 + 15} es 35.

Entrada: N = 2 
Salida:
Explicación: 
La suma de la serie suma de {1, 2}, es decir, {1 + 3} es 4. 

Enfoque simple: 
encuentre la serie de suma para cada valor de 1 a N y luego súmela. 

  • Cree una variable Total_sum para almacenar la serie de suma requerida.
  • Iterar sobre el número de 1 a N
  • Encuentre series de suma de cada valor usando las fórmulas sum = (N*(N + 1)) / 2
  • Agregue el valor a Total_sum
  • Al final, imprima el valor almacenado en Total_sum

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

C++

// C++ program to implement
// the above approach
#include<bits/stdc++.h>
using namespace std;
 
// Function to find the sum
static long sumOfSumSeries(int N)
{
    long sum = 0L;
 
    // Calculate sum-series
    // for every natural number
    // and add them
    for (int i = 1; i <= N; i++)
    {
        sum = sum + (i * (i + 1)) / 2;
    }
 
    return sum;
}
 
// Driver code
int main()
{
    int N = 5;
    cout << sumOfSumSeries(N);
}
 
// This code is contributed by Code_Mech

Java

// Java program to implement
// the above approach
 
class GFG {
 
    // Function to find the sum
    static long sumOfSumSeries(int N)
    {
 
        long sum = 0L;
 
        // Calculate sum-series
        // for every natural number
        // and add them
        for (int i = 1; i <= N; i++) {
            sum = sum + (i * (i + 1)) / 2;
        }
 
        return sum;
    }
 
    // Driver code
    public static void main(String[] args)
    {
        int N = 5;
        System.out.println(sumOfSumSeries(N));
    }
}

Python3

# Python3 program to implement
# the above approach
 
# Function to find the sum
def sumOfSumSeries(N):
 
    _sum = 0
 
    # Calculate sum-series
    # for every natural number
    # and add them
    for i in range(N + 1):
        _sum = _sum + (i * (i + 1)) // 2
 
    return _sum
 
# Driver code
N = 5
 
print(sumOfSumSeries(N))
     
# This code is contributed by divyamohan123

C#

// C# program to implement
// the above approach
using System;
class GFG{
 
// Function to find the sum
static long sumOfSumSeries(int N)
{
    long sum = 0L;
 
    // Calculate sum-series
    // for every natural number
    // and add them
    for(int i = 1; i <= N; i++)
    {
       sum = sum + (i * (i + 1)) / 2;
    }
     
    return sum;
}
 
// Driver code
public static void Main()
{
    int N = 5;
     
    Console.Write(sumOfSumSeries(N));
}
}
 
// This code is contributed by Nidhi_Biet

Javascript

<script>
 
    // Javascript program to implement
    // the above approach
     
    // Function to find the sum
    function sumOfSumSeries(N)
    {
        let sum = 0;
 
        // Calculate sum-series
        // for every natural number
        // and add them
        for (let i = 1; i <= N; i++)
        {
            sum = sum + (i * (i + 1)) / 2;
        }
 
        return sum;
    }
     
    let N = 5;
    document.write(sumOfSumSeries(N));
     
    // This code is contributed by suresh07.
</script>
Producción

35

Complejidad temporal : O (N)
Espacio auxiliar: O(1)

Enfoque eficiente: 
Total_sum de la serie anterior se puede calcular directamente utilizando las siguientes fórmulas: 

\text{Suma total} = \frac{(N*(N+1)*(N+2))}{6}
donde N es el número natural 

Prueba de la fórmula anterior:
Supongamos que N = 5 

  1. Luego, la suma es la suma de todos los elementos a continuación en la tabla, llamemos a esto » resultado «. 
     
1        
1 2      
1 2 3    
1 2 3 4  
1 2 3 4 5

llenemos las celdas vacías con el mismo valor en otras columnas, llamemos a esto » totalSum «

  1.  
1 2 3 4 5
1 2 3 4 5
1 2 3 4 5
1 2 3 4 5
1 2 3 4 5

Como la suma de N números se repite N veces 
totalSum = N * [(N*(N + 1))/2]
datos poblados = (1 veces * 2) + (2 veces * 3) + (3 veces * 4) + (4 veces * 5) 
= 1*2 + 2*3 + 3*4 ……… +(N-1)*N 
=[(N-1) * (N) * (N+1)]/3 
 

  1. Ya que, 
     

resultado = suma total – datos poblados 
= N * [(N*(N+1))/2] – [(N-1) * (N) * (N+1)]/3 
= (N*(N+1) *(N+2))/6  

  1. Por lo tanto 
    \text{Suma de Suma-Serie hasta N} = \frac{(N*(N+1)*(N+2))}{6}
     

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

C++

// C++ program to implement
// the above approach
#include <iostream>
#include <math.h>
using namespace std;
 
// Function to find the sum
long sumOfSumSeries(int n)
{
    return (n * (n + 1) * (n + 2)) / 6;
}
 
// Driver code
int main ()
{
    int N = 5;
    cout << sumOfSumSeries(N);
    return 0;
}
 
// This code is contributed
// by shivanisinghss2110

Java

// Java program to implement
// the above approach
 
class GFG {
 
    // Function to find the sum
    static long sumOfSumSeries(int n)
    {
        return (n * (n + 1) * (n + 2)) / 6;
    }
 
    // Driver code
    public static void main(String[] args)
    {
        int N = 5;
        System.out.println(sumOfSumSeries(N));
    }
}

Python3

# Python3 program to implement
# the above approach
 
# Function to find the sum
def sumOfSumSeries(n):
     
    return (n * (n + 1) * (n + 2)) // 6
 
# Driver code
N = 5
 
print(sumOfSumSeries(N))
 
# This code is contributed by divyamohan123

C#

// C# program to implement the
// above approach
using System;
class GFG{
 
// Function to find the sum
static long sumOfSumSeries(int n)
{
    return (n * (n + 1) * (n + 2)) / 6;
}
 
// Driver code
public static void Main(String[] args)
{
    int N = 5;
     
    Console.Write(sumOfSumSeries(N));
}
}
 
// This code is contributed by Ritik Bansal

Javascript

<script>
    // Javascript program to implement
    // the above approach
     
    // Function to find the sum
    function sumOfSumSeries(n)
    {
        return (n * (n + 1) * (n + 2)) / 6;
    }
     
    let N = 5;
    document.write(sumOfSumSeries(N));
 
</script>
Producción

35

Complejidad del tiempo: O(1), teniendo en cuenta que la multiplicación, la suma y la división requieren un tiempo constante.
Espacio Auxiliar: O(1)

Publicación traducida automáticamente

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