Open In App

Mean of array using recursion

Improve
Improve
Like Article
Like
Save
Share
Report

To find the mean of the elements of the array. 

Mean = (Sum of elements of the Array) /
       (Total no of elements in Array)

Examples: 

Input : 1 2 3 4 5
Output : 3

Input : 1 2 3
Output : 2

To find the mean using recursion assume that the problem is already solved for N-1 ie you have to find for n

Sum of first N-1 elements = 
                 (Mean of N-1 elements)*(N-1)

Mean of N elements = (Sum of first N-1 elements + 
                      N-th elements) / (N)

Note : Since array indexing starts from 0, we access N-th element using A[N-1].
 

Implementation:

C++




// Recursive C++ program to find mean of array
#include <iostream>
using namespace std;
  
// Function Definition of findMean function
float findMean(int A[], int N)
{
    if (N == 1)
        return (float)A[N-1];
    else
        return ((float)(findMean(A, N-1)*(N-1) +
                                    A[N-1]) / N);
}
  
// Main Calling Function
int main()
{
    float Mean = 0;
    int A[] = {1, 2, 3, 4, 5};
    int N = sizeof(A)/sizeof(A[0]);
    cout << " "<< findMean(A, N);
    return 0;
}
  
// this code is contributed by shivanisinghss2110


C




// Recursive C program to find mean of array
#include<stdio.h>
  
// Function Definition of findMean function
float findMean(int A[], int N)
{
    if (N == 1)
        return (float)A[N-1];
    else
        return ((float)(findMean(A, N-1)*(N-1) +
                                    A[N-1]) / N);
}
  
// Main Calling Function
int main()
{
    float Mean = 0;
    int A[] = {1, 2, 3, 4, 5};
    int N = sizeof(A)/sizeof(A[0]);
    printf("%.2f\n", findMean(A, N));
    return 0;
}


Java




// Recursive Java program to find mean of array
import java.io.*;
  
class CalcMean
{
    // Function Definition of findMean function
    static float findMean(int A[], int N)
    {
        if (N == 1)
            return (float)A[N-1];
        else
            return ((float)(findMean(A, N-1)*(N-1) +
                                        A[N-1]) / N);
    }
      
    // main Function
    public static void main (String[] args) 
    {
        float Mean = 0;
        int A[] = {1, 2, 3, 4, 5};
        int N = A.length;
        System.out.println(findMean(A, N));
    }
}


Python3




# Recursive Python3 program to
# find mean of array
  
# Function Definition of findMean function
def findMean(A, N):
  
    if (N == 1):
        return A[N - 1]
    else:
        return ((findMean(A, N - 1) *
                (N - 1) + A[N - 1]) / N)
  
# Driver Code
Mean = 0
A = [1, 2, 3, 4, 5]
N = len(A)
print(findMean(A, N))
  
# This code is contributed by Anant Agarwal.


C#




// Recursive C# program to find mean of array
using System;
  
class CalcMean
{
    // Function Definition of findMean function
    static float findMean(int []A, int N)
    {
        if (N == 1)
            return (float)A[N - 1];
        else
            return ((float)(findMean(A, N - 1) * 
                           (N - 1) + A[N - 1]) / N);
    }
       
    // Driver code
    public static void Main() 
    {
        //float Mean = 0;
        int []A = {1, 2, 3, 4, 5};
        int N = A.Length;
        Console.WriteLine(findMean(A, N));
    }
}
  
// This code is contributed by Anant Agarwal.


PHP




<?php
// Recursive PHP program to find mean of array
  
// Function Definition of findMean function
function findMean($A, $N)
{
    if ($N == 1)
        return $A[$N - 1];
    else
        return ((findMean($A, $N - 1) * ($N - 1) +
                          $A[$N - 1]) / $N);
}
  
// Driver Code
$Mean = 0;
$A = array(1, 2, 3, 4, 5);
$N = sizeof($A);
echo findMean($A, $N);
  
// This code is contributed by ajit.
?>


Javascript




<script>
    // Recursive Javascript program to find mean of array
      
    // Function Definition of findMean function
    function findMean(A, N)
    {
        if (N == 1)
            return A[N - 1];
        else
            return ((findMean(A, N - 1) * (N - 1) + A[N - 1]) / N);
    }
      
    // float Mean = 0;
    let A = [1, 2, 3, 4, 5];
    let N = A.length;
    document.write(findMean(A, N));
      
    // This code is contributed by rameshtravel07.
</script>


Output

 3

Time Complexity: O(n)
Auxiliary Space: O(n)

 



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