Mean of array using recursion
Last Updated :
19 Sep, 2023
Improve
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)