Open In App

Find array elements that are greater than average

Improve
Improve
Like Article
Like
Save
Share
Report

Given an array of numbers, print all those elements that are greater than average.

Examples: 

Input : 5, 4, 6, 9, 10
Output : 9 10
Explanation:
avg = 5 + 4 + 6 + 9 + 10 / 5;
avg = 34 / 5
avg = 6.8
Elements greater than 6.8 are 9 and
10

Input : 1, 2, 4, 0, 5
Output : 4 5

1) Find average of elements
2) Traverse array again and print elements that are greater than average, 

Algorithm:

Step 1: Start
Step 2: create a static function of void return type name it as printAboveAvg which take an array and its length as input value.
Step 3: initialize a variable of double data type name it as avg to 0.
Step 4: start a for loop and traverse from the given array.
            a. add value of every ith index to “avg” and assign it to “avg”.
            b. Divide ‘avg’ by the size of the array to get the average value.
Step 5: start another for loop and traverse through array.
           a. now if value of array at the index i is greater than “avg” then print that value.
Step 6: End

C++




// A C++ program to print elements which are
// greater than avg of array
#include <iostream>
using namespace std;
 
// Print array elements greater than average
void printAboveAvg(int arr[], int n)
{
    // Find average
    double avg = 0;
    for (int i = 0; i < n; i++)
        avg += arr[i];   
    avg = avg / n;
 
    // Print elements greater than average
    for (int i = 0; i < n; i++)
        if (arr[i] > avg)
            cout << arr[i] << " ";
}
 
// Driver program
int main()
{
    int arr[] = { 5, 4, 6, 9, 10 };
    int a = sizeof(arr) / sizeof(arr[0]);
    printAboveAvg(arr, a);
    return 0;
}


Java




// A Java program to print elements which are
// greater than avg of array
import java.io.*;
 
class GFG {
 
    // Print array elements greater than average
    static void printAboveAvg(int arr[], int n)
    {
         
        // Find average
        double avg = 0;
        for (int i = 0; i < n; i++)
            avg += arr[i];
        avg = avg / n;
     
        // Print elements greater than average
        for (int i = 0; i < n; i++)
            if (arr[i] > avg)
                System.out.print(arr[i] + " ");
    }
 
    // Driver program
    public static void main (String[] args)
    {
        int arr[] = { 5, 4, 6, 9, 10 };
        int a = arr.length;
        printAboveAvg(arr, a);
     
    }
}
 
// This code is contributed by anuj_67.


Python3




# python program to print elements
# which are greater than avg of
# array
 
# Print array elements greater
# than average
def printAboveAvg(arr, a):
 
    # Find average
    avg = 0
    for i in range(a):
        avg = avg + arr[i]
         
    avg = avg // a
 
    # Print elements greater than
    # average
    for i in range(a):
        if arr[i] > avg:
            print(arr[i], end = " ")
 
# Driver Program
arr = [5, 4, 6, 9, 10]
a = len(arr)
printAboveAvg(arr, a)
 
# This code is contributed
# by Shrikant13.


PHP




<?php
// A PHP program to print
// elements which are
// greater than avg of array
 
// Print array elements
// greater than average
function printAboveAvg( $arr, $n)
{
     
    // Find average
    $avg = 0;
     
    for ($i = 0; $i < $n; $i++)
        $avg += $arr[$i];
    $avg = $avg / $n;
 
    // Print elements greater
    // than average
    for ($i = 0; $i < $n; $i++)
        if ($arr[$i] > $avg)
            echo $arr[$i] , " ";
}
 
    // Driver Code
    $arr = array(5, 4, 6, 9, 10);
    $a = count($arr);
    printAboveAvg($arr, $a);
 
// This code is contributed by anuj_67.
?>


C#




// A C# program to print elements which are
// greater than avg of array
using System;
using System.Collections.Generic;
 
class GFG {
     
    // Print array elements
    // greater than average
    static void printAboveAvg(int []arr, int n)
    {
        // Find average
        double avg = 0;
        for (int i = 0; i < n; i++)
            avg += arr[i];
        avg = avg / n;
     
        // Print elements greater
        // than average
        for (int i = 0; i < n; i++)
            if (arr[i] > avg)
                Console.Write(arr[i] + " ");
    }
     
    // Driver Code
    public static void Main()
    {
        int []arr = {5, 4, 6, 9, 10};
        int a = arr.Length;
        printAboveAvg(arr, a);
    }
}
 
// This code is contributed by
// Manish Shaw (manishshaw1)


Javascript




<script>
 
// A Javascript program to print
// elements which are greater
// than avg of array
 
// Print array elements greater
// than average
function printAboveAvg(arr, n)
{
     
    // Find average
    let avg = 0;
    for(let i = 0; i < n; i++)
        avg += arr[i];   
         
    avg = avg / n;
 
    // Print elements greater than average
    for(let i = 0; i < n; i++)
        if (arr[i] > avg)
            document.write(arr[i] + " ");
}
 
// Driver code
let arr = [ 5, 4, 6, 9, 10 ];
let a = arr.length;
 
printAboveAvg(arr, a);
     
// This code is contributed by jana_sayantan
 
</script>


Output

9 10 

Time complexity: O(N) where N is length of the given array
Auxiliary Space: O(1)



Last Updated : 03 Mar, 2023
Like Article
Save Article
Previous
Next
Share your thoughts in the comments
Similar Reads