Average of odd numbers till a given odd number
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. ?> |
Javascript
<script> // Javascript 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) { document.write( "Invalid Input" ); return -1; } let 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 let n = 15; document.write(averageOdd(n)); // This code is contributed by gauravrajput1 </script> |
C++
// Program to find average of odd numbers // till a given odd number. #include <iostream> using namespace std; // Function to calculate the average // of odd numbers int averageOdd( int n) { if (n % 2 == 0) { cout << "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; cout << " " << averageOdd(n); return 0; } // this code is contributed by shivanisingh.ss2110 |
Output:
8
Time Complexity: O(n) //since there runs a loop from 0 to (n – 1).
Auxiliary Space: O(1) // since no extra array or data structure is used so the space taken by the algorithm is constant
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 <bits/stdc++.h> using namespace std; // Function to calculate the average // of odd numbers int averageOdd( int n) { if (n % 2 == 0) { cout << "Invalid Input" << endl; return -1; } return (n + 1) / 2; } // driver function int main() { int n = 15; cout << averageOdd(n) << endl; return 0; } // The code is contributed by Nidhi goel. |
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. ?> |
Javascript
<script> // javascript 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) { document.write( "Invalid Input" ); return -1; } return (n + 1) / 2; } // driver function let n = 15; document.write( averageOdd(n)); // This code is contributed by todaysgaurav </script> |
Output:
8
Time complexity: O(1) since performing constant operations
Space Complexity: O(1) since using constant variables