Skip to content
Related Articles

Related Articles

Average of odd numbers till a given odd number
  • Last Updated : 23 Apr, 2018

Given an odd number n, find the average of odd numbers from 1 to n.

Examples:

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

Input : n = 221
Output : 111

Method 1 We can calculate average by adding each odd numbers till n and then dividing sum by count.

Below is the implementation of the approach.

C++






// Program to find average of odd numbers
// till a given odd number.
#include <stdio.h>
  
// Function to calculate the average
// of odd numbers
int averageOdd(int n)
{
    if (n % 2 == 0) {
        printf("Invalid Input");
        return -1;
    }
  
    int sum = 0, count = 0;
    while (n >= 1) {
  
        // count odd numbers
        count++;
  
        // store the sum of odd numbers
        sum += n;
  
        n = n - 2;
    }
    return sum / count;
}
  
// driver function
int main()
{
    int n = 15;
    printf("%d", averageOdd(n));
    return 0;
}


Java




// Program to find average of odd numbers
// till a given odd number.
import java.io.*;
  
class GFG {
      
    // Function to calculate the average
    // of odd numbers
    static int averageOdd(int n)
    {
        if (n % 2 == 0) {
            System.out.println("Invalid Input");
            return -1;
        }
       
        int sum = 0, count = 0;
        while (n >= 1) {
       
            // count odd numbers
            count++;
       
            // store the sum of odd numbers
            sum += n;
       
            n = n - 2;
        }
        return sum / count;
    }
       
    // driver function
    public static void main(String args[])
    {
        int n = 15;
        System.out.println(averageOdd(n));
    }
}
  
/*This code is contributed by Nikita tiwari.*/


Python3




# Program to find average
# of odd numbers till a
# given odd number.
  
# Function to calculate 
# the average of odd 
# numbers
def averageOdd(n) :
  
    if (n % 2 == 0) :
        print("Invalid Input")
        return -1
      
    sm = 0
    count = 0
  
    while (n >= 1) :
  
        # count odd numbers
        count = count + 1
  
        # store the sum of 
        # odd numbers
        sm = sm + n
  
        n = n - 2
      
    return sm // count
      
# Driver function
n = 15
print(averageOdd(n))
  
# This code is contributed by Nikita Tiwari.


C#




// C# Program to find average  
// of odd numbers till a given
// odd number.
using System;
  
class GFG {
      
    // Function to calculate the 
    // average of odd numbers
    static int averageOdd(int n)
    {
        if (n % 2 == 0) {
            Console.Write("Invalid Input");
            return -1;
        }
      
        int sum = 0, count = 0;
        while (n >= 1) {
      
            // count odd numbers
            count++;
      
            // store the sum of odd numbers
            sum += n;
      
            n = n - 2;
        }
        return sum / count;
    }
      
    // driver function
    public static void Main()
    {
        int n = 15;
        Console.Write(averageOdd(n));
    }
}
  
/*This code is contributed by vt_m.*/


PHP




<?php
// Program to find average of odd 
// numbers till a given odd number.
  
// Function to calculate the 
// average of odd numbers
function averageOdd($n)
{
    if ($n % 2 == 0) 
    {
        echo("Invalid Input");
        return -1;
    }
  
    $sum = 0; 
    $count = 0;
    while ($n >= 1) 
    {
  
        // count odd numbers
        $count++;
  
        // store the sum of
        // odd numbers
        $sum += $n;
  
        $n = $n - 2;
    }
    return $sum / $count;
}
  
    // Driver Code
    $n = 15;
    echo(averageOdd($n));
      
// This code is contributed by vt_m.
?>



Output:

8

Method 2
The average of odd numbers can find out only in single steps
by using the following formula
[n + 1 ] / 2
where n is last odd number.

How does this formula work?

We know there are (n+1)/2 odd numbers till n.  

For example:
There are two odd numbers till 3 and there are
three odd numbers till 5.

Sum of first k odd numbers is k*k 

Sum of odd numbers till n is ((n+1)/2)2

Average of odd numbers till n is (n + 1)/2

Below is the implementation of the approach.

C




// Program to find average of odd numbers
// till a given odd number.
#include <stdio.h>
  
// Function to calculate the average
// of odd numbers
int averageOdd(int n)
{
    if (n % 2 == 0) {
        printf("Invalid Input");
        return -1;
    }
  
    return (n + 1) / 2;
}
  
// driver function
int main()
{
    int n = 15;
    printf("%d", averageOdd(n));
    return 0;
}


Java




// Program to find average of odd 
// numbers till a given odd number.
import java.io.*;
  
class GFG 
{
    // Function to calculate the 
    // average of odd numbers
    static int averageOdd(int n)
    {
        if (n % 2 == 0
        {
            System.out.println("Invalid Input");
            return -1;
        }
      
        return (n + 1) / 2;
    }
      
    // driver function
    public static void main(String args[])
    {
        int n = 15;
        System.out.println(averageOdd(n));
    }
}
  
// This code is contributed by Nikita tiwari.


Python3




# Program to find average of odd 
# numbers till a given odd number.
  
# Function to calculate the 
# average of odd numbers
def averageOdd(n) :
    if (n % 2 == 0) :
        print("Invalid Input")
        return -1
      
      
    return (n + 1) // 2
      
# driver function
n = 15
print(averageOdd(n))
  
  
  
# This code is contributed by Nikita tiwari.


C#




// C# Program to find average
// of odd numbers till a given 
// odd number.
using System;
  
class GFG 
{
    // Function to calculate the 
    // average of odd numbers
    static int averageOdd(int n)
    {
        if (n % 2 == 0) 
        {
            Console.Write("Invalid Input");
            return -1;
        }
      
        return (n + 1) / 2;
    }
      
    // driver function
    public static void Main()
    {
        int n = 15;
        Console.Write(averageOdd(n));
    }
}
  
// This code is contributed by vt_m.


PHP




<?php
// Program to find average of odd
// numbers till a given odd number.
  
// Function to calculate the 
// average of odd numbers
function averageOdd( $n)
{
    if ($n % 2 == 0) 
    {
        echo("Invalid Input");
        return -1;
    }
  
    return ($n + 1) / 2;
}
  
    // Driver Code
    $n = 15;
    echo(averageOdd($n));
      
// This code is contributed by vt_m. 
?>



Output:

8

Attention reader! Don’t stop learning now. Get hold of all the important DSA concepts with the DSA Self Paced Course at a student-friendly price and become industry ready.

My Personal Notes arrow_drop_up
Recommended Articles
Page :