# Write a Program to Find the Sum of Series 1^2+3^2+5^2+…..+(2n-1)^2

Posted in  Vinay Khatri
Last updated on December 2, 2023

## Problem Statement

In this programming tutorial, we will learn how to implement a program to find the sum of the following series. ``` 1^2 + 3^2 + 5^2 + . . . + (2*n – 1)^2 ``` The series is a sum of odd square values. And the ``` n ``` represents the number of odd numbers that should be present in the series.

Example 1

Input

`n=4`

Output

``84``

Explanation

```if n = 4
So the last digit will be (2*n-1) = (2*4-1) = 7
The series would become `1 2 + 32 + 52 + 72````

Example 2 Input

`n=9`

Output

`969`

Explanation

```if n = 49
So the last digit will be (2*9-1) = (2*9-1) = 17
1 9 25 49 81 121 169 225 289 = 969```

### Approach 1 (Brute Force)

In our first approach, we will use the brute force approach, in which we will use a for loop to compute the sum of the series. The algorithm for this solution is pretty straightforward we will create a loop from range 1 to (2*n-1), increase the loop counter with 2 and add the square of every element to the total sum.

### C Program to Find the Sum of Series 1^2+3^2+5^2+…..+(2n-1)^2

``````#include <iostream>
#include <math.h>

int main()
{
int sum=0,n,i;

printf("Here we will calculate the sum of series 1^2+ 3^2 + 5^2+ ...+ ((2*n)-1)^2 \n");
//input the value of n
printf("Enter the value of n: ");
scanf("%d", &n);

for(i=1; i<=(2*n)-1; i+=2)
{
sum += pow(i,2);

}
printf("The sum of the series is: %d",sum);

return 0;
}``````

Output

``````Here we will calculate the sum of series 1^2+ 3^2 + 5^2+ ...+ ((2*n)-1)^2
Enter the value of n: 10
The sum of the series is: 1330``````

### C++ Program to Find the Sum of Series 1^2+3^2+5^2+…..+(2n-1)^2

``````#include<iostream>
#include<math.h>
using namespace std;
int main()
{
int sum=0,n;
cout<<"Here we will calculate the sum of series 1^2+ 3^2 + 5^2+ ...+ ((2*n)-1)^2 \n";

//input the value of n
cout<<"Enter the value of n: "; cin>>n;
for(int i=1; i<=(2*n)-1; i+=2)
{
sum += pow(i,2);
}
cout<<"The sum of the series is: "<<sum;
return 0;
}``````

Output:

``````Here we will calculate the sum of series 1^2+ 3^2 + 5^2+ ...+ ((2*n)-1)^2
Enter the value of n: 10
The sum of the series is: 1330``````

### Python Program to Find the Sum of Series 1^2+3^2+5^2+…..+(2n-1)^2

``````import math
sum=0
print("Here we will calculate the sum of series 1^2+ 3^2 + 5^2+ ...+ ((2*n)-1)^2")

# input the value of n
n = int(input("Enter the value of n: "))

for i in range(1,((2*n)-1)+1,2):
sum+=math.pow(i,2)

print("The sum of the series is:", int(sum))``````

Output:

``````Here we will calculate the sum of series 1^2+ 3^2 + 5^2+ ...+ ((2*n)-1)^2
Enter the value of n: 3
The sum of the series is: 35``````

### Complexity Analysis

• Time Complexity: O(N), where N represent the total number of numbers present in the series.
• Space complexity: O(1), the space complexity of the above program is constant.

### Approach 2 (using a mathematical formula)

In the first approach, we are using a for loop which makes the time complexity of the program O(N).  But using the mathematical formula ``` (n * (2 * n - 1) * (2 * n + 1)) / 3 ``` we can make our program more efficient with the time complexity of O(1).

Example Input

`n= 4`

Output

`84`

Formula

``1^2+3^2+5^2+…..+(2n-1)^2 = (n * (2 * n - 1) * (2 * n + 1)) / 3 ``

Explanation

```=(4* (2*4-1)*(2*4+1))/3
=(4*(7 )*(9))/3
=(252)/3
=84```

### C Program to Find the Sum of Series 1^2+3^2+5^2+…..+(2n-1)^2

``````#include <stdio.h>
#include <math.h>

int main()
{
int sum=0,n,i;

printf("Here we will calculate the sum of series 1^2+ 3^2 + 5^2+ ...+ ((2*n)-1)^2 \n");
//input the value of n
printf("Enter the value of n: ");
scanf("%d", &n);

// compute the sum
sum = (n * (2 * n - 1) * (2 * n + 1)) / 3;

printf("The sum of the series is: %d",sum);

return 0;
}``````

Output

``````Here we will calculate the sum of series 1^2+ 3^2 + 5^2+ ...+ ((2*n)-1)^2
Enter the value of n: 5
The sum of the series is: 165``````

### C++ Program to Find the Sum of Series 1^2+3^2+5^2+…..+(2n-1)^2

``````#include<iostream>
#include<math.h>
using namespace std;
int main()
{
int sum=0,n;
cout<<"Here we will calculate the sum of series 1^2+ 3^2 + 5^2+ ...+ ((2*n)-1)^2 \n";

//input the value of n
cout<<"Enter the value of n: "; cin>>n;

// compute the sum
sum = (n * (2 * n - 1) * (2 * n + 1)) / 3;

cout<<"The sum of the series is: "<<sum;
return 0;
}``````

### Python Program to Find the Sum of Series 1^2+3^2+5^2+…..+(2n-1)^2

``````import math
sum=0
print("Here we will calculate the sum of series 1^2+ 3^2 + 5^2+ ...+ ((2*n)-1)^2")

# input the value of n
n = int(input("Enter the value of n: "))

# compute the sum of the series
sum =(n * (2 * n - 1) * (2 * n + 1)) // 3

print("The sum of the series is:", int(sum))``````

Output

``````Here we will calculate the sum of series 1^2+ 3^2 + 5^2+ ...+ ((2*n)-1)^2
Enter the value of n: 4
The sum of the series is: 84``````

### Complexity Analysis

• Time Complexity: O(1), constant time complexity.
• Space complexity: O(1).

## Wrapping Up

In this programming tutorial, we learned how to write code in C, C++, and Python to find the sum of series 1^2+3^2+5^2+…..+2n-1^2. In this tutorial, we have used two approaches to solve the above problem. In the first approach, we used brute force where we used a loop to calculate the sum of the series. Which makes the time complexity of the above program O(N). In the second approach, we optimize the code and solve the sum problem with the formula ``` (n * (2 * n - 1) * (2 * n + 1))/3 ``` . The second approach solves the problem in constant time complexity.