Average of first n odd naturals numbers

Given a Number n then find the Average of first n odd numbers
1 + 3 + 5 + 7 + 9 +………….+ (2n – 1)

Examples :

Input  : 5
Output : 5
(1 + 3 + 5 + 7 + 9)/5 = 5 

Input  : 10
Output : 10
(1 + 3 + 5 + 7 + 9 + 11 + 13 + 15 + 17 + 19)/10 =10

Method 1 ( Naive Approach:)
A simple solution is to iterate loop form 1 to n time. Through sum of all odd numbers and divided by n.This solution take O(N) time.

C++

filter_none

edit
close

play_arrow

link
brightness_4
code

// A  C++ program to find average of
// sum of first n odd natural numbers.
#include <iostream>
using namespace std;
  
// Returns the Avg of
// first n odd numbers
int avg_of_odd_num(int n)
{
  
    // sum of first n odd number
    int sum = 0;
    for (int i = 0; i < n; i++)
        sum += (2 * i + 1);
  
    // Average of first
    // n odd numbers
    return sum / n;
}
  
// Driver Code
int main()
{
    int n = 20;
    cout << avg_of_odd_num(n);
    return 0;
}

chevron_right


Java

filter_none

edit
close

play_arrow

link
brightness_4
code

// Java program to find average of
// sum of first n odd natural numbers.
import java.io.*;
  
class GFG {
  
    // Returns the Avg of
    // first n odd numbers
    static int avg_of_odd_num(int n)
    {
  
        // sum of first n odd number
        int sum = 0;
  
        for (int i = 0; i < n; i++)
            sum += (2 * i + 1);
  
        // Average of first
        // n odd numbers
        return sum / n;
    }
  
    // Driver Code
    public static void main(String[] args)
    {
  
        int n = 20;
        avg_of_odd_num(n);
  
        System.out.println(avg_of_odd_num(n));
    }
}
  
// This code is contributed by vt_m

chevron_right


Python3

filter_none

edit
close

play_arrow

link
brightness_4
code

# A Python 3 program
# to find average of
# sum of first n odd
# natural numbers.
  
# Returns the Avg of
# first n odd numbers
def avg_of_odd_num(n) :
  
    # sum of first n odd number
    sm = 0
    for i in range(0, n) :
        sm = sm + (2 * i + 1)
       
    # Average of first 
    # n odd numbers
    return sm//n
  
   
# Driver Code
n = 20
print(avg_of_odd_num(n))
  
  
# This code is contributed
# by Nikita Tiwari.

chevron_right


C#

filter_none

edit
close

play_arrow

link
brightness_4
code

// C# program to find average
// of sum of first n odd
// natural numbers.
using System;
  
class GFG {
  
    // Returns the Avg of
    // first n odd numbers
    static int avg_of_odd_num(int n)
    {
  
        // sum of first n odd number
        int sum = 0;
  
        for (int i = 0; i < n; i++)
            sum += (2 * i + 1);
  
        // Average of first
        // n odd numbers
        return sum / n;
    }
  
    // Driver code
    public static void Main()
    {
  
        int n = 20;
        avg_of_odd_num(n);
  
        Console.Write(avg_of_odd_num(n));
    }
}
  
// This code is contributed by
// Smitha Dinesh Semwal

chevron_right


PHP

filter_none

edit
close

play_arrow

link
brightness_4
code

<?php
// A PHP program to find average of
// sum of first n odd natural numbers.
  
// Returns the Avg of
// first n odd numbers
function avg_of_odd_num($n)
{
  
    // sum of first n odd number
    $sum = 0;
    for ($i = 0; $i < $n; $i++)
        $sum += (2 * $i + 1);
  
    // Average of first
    // n odd numbers
    return $sum / $n;
}
  
// Driver Code
$n = 20;
echo(avg_of_odd_num($n));
  
// This code is contributed by Ajit.
?>

chevron_right


Output :

 20

Time Complexity : O(n)

Method 2 (Efficient Approach:)
The idea is the sum of first n odd number is n2, for find the Average of first n odd numbers so it is divide by n, hence formula is n2/n = n. it take O(1) time.

                           Avg of sum of first N odd Numbers = N

C++

filter_none

edit
close

play_arrow

link
brightness_4
code

// CPP Program to find the average
// of sum of first n odd numbers
#include <bits/stdc++.h>
using namespace std;
  
// Return the average of sum
// of first n odd numbers
int avg_of_odd_num(int n)
{
    return n;
}
  
// Driver Code
int main()
{
    int n = 8;
    cout << avg_of_odd_num(n);
    return 0;
}

chevron_right


Java

filter_none

edit
close

play_arrow

link
brightness_4
code

// java Program to find the average
// of sum of first n odd numbers
import java.io.*;
  
class GFG {
  
    // Return the average of sum
    // of first n odd numbers
    static int avg_of_odd_num(int n)
    {
        return n;
    }
  
    // Driver Code
    public static void main(String[] args)
    {
        int n = 8;
  
        System.out.println(avg_of_odd_num(n));
    }
}
  
// This code is contributed by vt_m

chevron_right


Python3

filter_none

edit
close

play_arrow

link
brightness_4
code

# Python 3 Program to
# find the average
# of sum of first n
# odd numbers
  
# Return the average of sum
# of first n odd numbers
def avg_of_odd_num(n) :
    return n
      
  
# Driver Code
n = 8
print(avg_of_odd_num(n))
  
  
# This code is contributed
# by Nikita Tiwari.

chevron_right


C#

filter_none

edit
close

play_arrow

link
brightness_4
code

// C# Program to find the average
// of sum of first n odd numbers
using System;
  
class GFG {
    // Return the average of sum
    // of first n odd numbers
    static int avg_of_odd_num(int n)
    {
        return n;
    }
  
    // Driver Code
    public static void Main()
    {
        int n = 8;
        Console.Write(avg_of_odd_num(n));
    }
}
// This code is contributed by
// Smitha Dinesh Semwal

chevron_right


PHP

filter_none

edit
close

play_arrow

link
brightness_4
code

<?php
// PHP Program to find the average
// of sum of first n odd numbers
  
// Return the average of sum
// of first n odd numbers
function avg_of_odd_num($n)
{
    return $n;
}
  
// Driver Code
$n = 8;
echo(avg_of_odd_num($n));
  
// This code is contributed by Ajit.
?>

chevron_right


Output :

 8

Time Complexity : O(1)

Proof

Sum of first n terms of an A.P.(Arithmetic Progression)
= (n/2) * [2*a + (n-1)*d].....(i)
where, a is the first term of the series 
and d is the difference between the adjacent 
terms of the series.

Here, a = 1, d = 2, applying these values to e. q., 
(i), we get
Sum = (n/2) * [2*1 + (n-1)*2]
    = (n/2) * [2 + 2*n - 2]
    = (n/2) * (2*n)
    = n*n
    = n2

Avg of first n odd numbers = n2/n
                           = n


My Personal Notes arrow_drop_up

Check out this Author's contributed articles.

If you like GeeksforGeeks and would like to contribute, you can also write an article using contribute.geeksforgeeks.org or mail your article to contribute@geeksforgeeks.org. See your article appearing on the GeeksforGeeks main page and help other Geeks.

Please Improve this article if you find anything incorrect by clicking on the "Improve Article" button below.





Article Tags :
Practice Tags :


Be the First to upvote.


Please write to us at contribute@geeksforgeeks.org to report any issue with the above content.