A series with the same common difference is known as arithmetic series. The first term of series is a and the common difference is d. The series looks like a, a + d, a + 2d, a + 3d, . . . Task is to find the sum of the series.
Examples:
Input : a = 1 d = 2 n = 4 Output : 16 1 + 3 + 5 + 7 = 16 Input : a = 2.5 d = 1.5 n = 20 Output : 335
A simple solution to find the sum of arithmetic series.
// CPP Program to find the sum of arithmetic // series. #include<bits/stdc++.h> using namespace std;
// Function to find sum of series. float sumOfAP( float a, float d, int n)
{ float sum = 0;
for ( int i=0;i<n;i++)
{
sum = sum + a;
a = a + d;
}
return sum;
} // Driver function int main()
{ int n = 20;
float a = 2.5, d = 1.5;
cout<<sumOfAP(a, d, n);
return 0;
} |
// JAVA Program to find the sum of // arithmetic series. class GFG{
// Function to find sum of series.
static float sumOfAP( float a, float d,
int n)
{
float sum = 0 ;
for ( int i = 0 ; i < n; i++)
{
sum = sum + a;
a = a + d;
}
return sum;
}
// Driver function
public static void main(String args[])
{
int n = 20 ;
float a = 2 .5f, d = 1 .5f;
System.out.println(sumOfAP(a, d, n));
}
} /*This code is contributed by Nikita Tiwari.*/ |
# Python Program to find the sum of # arithmetic series. # Function to find sum of series. def sumOfAP( a, d,n) :
sum = 0
i = 0
while i < n :
sum = sum + a
a = a + d
i = i + 1
return sum
# Driver function n = 20
a = 2.5
d = 1.5
print (sumOfAP(a, d, n))
# This code is contributed by Nikita Tiwari. |
// C# Program to find the sum of // arithmetic series. using System;
class GFG {
// Function to find sum of series.
static float sumOfAP( float a, float d,
int n)
{
float sum = 0;
for ( int i = 0; i < n; i++)
{
sum = sum + a;
a = a + d;
}
return sum;
}
// Driver function
public static void Main()
{
int n = 20;
float a = 2.5f, d = 1.5f;
Console.Write(sumOfAP(a, d, n));
}
} // This code is contributed by parashar. |
Output:
335
Time Complexity: O(n)
Space complexity: O(1) because using constant space
Approach 2:
An Efficient solution to find the sum of arithmetic series is to use the below formula as follows:
Sum of arithmetic series = ((n / 2) * (2 * a + (n - 1) * d)) Where a - First term d - Common difference n - No of terms
Example:
// C# efficient solution to find // sum of arithmetic series. using System;
class GFG {
static float sumOfAP( float a,
float d,
float n)
{
float sum = (n / 2) *
(2 * a +
(n - 1) * d);
return sum;
}
// Driver code
static public void Main ()
{
float n = 20;
float a = 2.5f, d = 1.5f;
Console.WriteLine(sumOfAP(a, d, n));
}
} // This code is contributed by Ajit. |
<?php // Efficient PHP code to find sum // of arithmetic series. // Function to find sum of series. function sumOfAP( $a , $d , $n )
{ $sum = ( $n / 2) * (2 * $a +
( $n - 1) * $d );
return $sum ;
} // Driver code $n = 20;
$a = 2.5; $d = 1.5;
echo (sumOfAP( $a , $d , $n ));
// This code is contributed by Ajit. ?> |
335
Time Complexity: O(1)
Space complexity: O(1) since using only constant variables
How does this formula work?
We can prove the formula using mathematical induction. We can easily see that the formula holds true for n = 1 and n = 2. Let this be true for n = k-1.
Let the formula be true for n = k-1. Sum of first k - 1 elements of arithmetic series is = (((k-1))/ 2) * (2 * a + (k - 2) * d)) We know k-th term of arithmetic series is = a + (k - 1)*d Sum of first k elements = = Sum of (k-1) numbers + k-th element = (((k-1)/2)*(2*a + (k-2)*d)) + (a + (k-1)*d) = [((k-1)(2a + (k-2)d) + (2a + 2kd - 2d)]/2 = ((k / 2) * (2 * a + (k - 1) * d))