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>
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