Programa para promedio de un arreglo (Iterativo y Recursivo)

Dada una array, la tarea es encontrar el promedio de esa array. El promedio es la suma de los elementos de la array dividida por el número de elementos.

Ejemplos: 

Input : arr[] = {1, 2, 3, 4, 5}
Output : 3
Sum of the elements is 1+2+3+4+5 = 15 
and total number of elements is 5.
So average is 15/5 = 3

Input : arr[] = {5, 3, 6, 7, 5, 3}
Output : 4.83333
Sum of the elements is 5+3+6+7+5+3 = 29
and total number of elements is 6.
So average is 29/6 = 4.83333.

Iterativo: 
El programa iterativo es fácil. Necesitamos encontrar la suma y dividir la suma por el número total de elementos. 

C++

// C++ program to calculate average of array elements
#include <iostream>
using namespace std;
 
// Function that return average of an array.
double average(int a[], int n)
{
    // Find sum of array element
    int sum = 0;
    for (int i=0; i<n; i++)
       sum += a[i];
 
    return (double)sum/n;
}
 
// Driver code
int main()
{
    int arr[] = {10, 2, 3, 4, 5, 6, 7, 8, 9};
    int n = sizeof(arr)/sizeof(arr[0]);
 
    cout << average(arr, n) << endl;
    return 0;
}

Java

// Java program to calculate average of array elements
class GFG {
     
    // Function that return average of an array.
    static double average(int a[], int n)
    {
         
        // Find sum of array element
        int sum = 0;
         
        for (int i = 0; i < n; i++)
            sum += a[i];
     
        return (double)sum / n;
    }
     
    //driver code
    public static void main (String[] args)
    {
         
        int arr[] = {10, 2, 3, 4, 5, 6, 7, 8, 9};
        int n = arr.length;
     
        System.out.println(average(arr, n));
    }
}
 
// This code is contributed by Anant Agarwal.

Python3

# Python3 code to calculate
# average of array elements
 
# Function that return
# average of an array.
def average( a , n ):
 
    # Find sum of array element
    sum = 0
    for i in range(n):
        sum += a[i]
     
    return sum/n;
 
# Driver code
arr = [10, 2, 3, 4, 5, 6, 7, 8, 9]
n = len(arr)
print(average(arr, n))
 
# This code is contributed by "Shard_Bhardwaj".

C#

// C# program to calculate average of
// array elements
using System;
class GFG {
     
    // Function that return average of
    // an array.
    static double average(int []a, int n)
    {
         
        // Find sum of array element
        int sum = 0;
         
        for (int i = 0; i < n; i++)
            sum += a[i];
     
        return (double)sum / n;
    }
     
    // Driver code
    public static void Main ()
    {
         
        int []arr = {10, 2, 3, 4, 5, 6,
                                7, 8, 9};
        int n = arr.Length;
     
        Console.Write(average(arr, n));
    }
}
 
// This code is contributed by nitin mittal.

PHP

<?php
// PHP program to calculate average
// of array elements
 
// Function that return average of
// an array.
function average( $a, $n)
{
     
    // Find sum of array element
    $sum = 0;
    for ( $i = 0; $i < $n; $i++)
        $sum += $a[$i];
 
    return $sum / $n;
}
 
// Driver code
    $arr = array(10, 2, 3, 4, 5,
                        6, 7, 8, 9);
    $n = count($arr);
 
    echo average($arr, $n);
 
// This code is contributed by anuj_67.
?>

Javascript

<script>
      // JavaScript program to calculate average of array elements
 
      // Function that return average of an array.
      function average(a, n)
      {
       
        // Find sum of array element
        var sum = 0;
        for (var i = 0; i < n; i++) sum += a[i];
 
        return parseFloat(sum / n);
      }
 
      // Driver code
 
      var arr = [10, 2, 3, 4, 5, 6, 7, 8, 9];
      var n = arr.length;
 
      document.write(average(arr, n));
      document.write("<br>");
       
      // This code is contributed by rdtank.
    </script>
Producción

6

Complejidad de tiempo: O(n)

Recursivo: 
la idea es pasar el índice del elemento como un parámetro adicional y calcular la suma recursivamente. Después de calcular la suma, divida la suma por n.

C++

// C++ program to calculate average of array elements
#include <iostream>
using namespace std;
 
// Recursively computes average of a[]
double avgRec(int a[], int i, int n)
{
    // Last element
    if (i == n-1)
        return a[i];
 
    // When index is 0, divide sum computed so
    // far by n.
    if (i == 0)
        return ((a[i] + avgRec(a, i+1, n))/n);
 
    // Compute sum
    return (a[i] + avgRec(a, i+1, n));
}
 
// Function that return average of an array.
double average(int a[], int n)
{
     return avgRec(a, 0, n);
}
 
// Driver code
int main()
{
    int arr[] = {10, 2, 3, 4, 5, 6, 7, 8, 9};
    int n = sizeof(arr)/sizeof(arr[0]);
 
    cout << average(arr, n) << endl;
    return 0;
}

Java

// Java program to calculate average
// of array elements
 
class CalcAvg
{
    // Recursively computes average of a[]
    static double avgRec(int a[], int i, int n)
    {
        // Last element
        if (i == n-1)
            return a[i];
      
        // When index is 0, divide sum computed so
        // far by n.
        if (i == 0)
            return ((a[i] + avgRec(a, i+1, n))/n);
      
        // Compute sum
        return (a[i] + avgRec(a, i+1, n));
    }
      
    // Function that return average of an array.
    static double average(int a[], int n)
    {
         return avgRec(a, 0, n);
    }
     
    // main function
    public static void main (String[] args)
    {
        int arr[] = {10, 2, 3, 4, 5, 6, 7, 8, 9};
        int n = arr.length;
      
        System.out.println(average(arr, n));
    }
}

Python3

# Python3 code to calculate
# average of array elements
 
# Recursively computes average of a[]
def avgRec( a , i , n ):
     
    # Last element
    if i == n-1:
        return a[i]
     
    # When index is 0, divide sum
    # computed so far by n.
    if i == 0:
        return ((a[i] + avgRec(a, i+1, n)) / n)
     
    # Compute sum
    return (a[i] + avgRec(a, i+1, n))
 
# Function that return
# average of an array.
def average(a, n):
    return avgRec(a, 0, n)
 
# Driver code
arr = [10, 2, 3, 4, 5, 6, 7, 8, 9]
n = len(arr)
print(average(arr, n))
 
# This code is contributed by "Sharad_Bhardwaj".

C#

// C# program to calculate average
// of array elements
using System;
 
class GFG {
     
    // Recursively computes average of a[]
    static double avgRec(int []a, int i, int n)
    {
         
        // Last element
        if (i == n-1)
            return a[i];
     
        // When index is 0, divide sum
        // computed so far by n.
        if (i == 0)
            return ((a[i] + avgRec(a, i+1, n))/n);
     
        // Compute sum
        return (a[i] + avgRec(a, i+1, n));
    }
     
    // Function that return average of an array.
    static double average(int []a, int n)
    {
        return avgRec(a, 0, n);
    }
     
    // main function
    public static void Main ()
    {
        int []arr = {10, 2, 3, 4, 5, 6, 7, 8, 9};
        int n = arr.Length;
     
        Console.Write(average(arr, n));
    }
}
 
// This code is contributed by Smitha.

PHP

<?php
// PHP program to calculate
// average of array elements
 
// Recursively computes
// average of a[]
function avgRec($a, $i, $n)
{
    // Last element
    if ($i == $n - 1)
        return $a[$i];
 
    // When index is 0, divide
    // sum computed so far by n.
    if ($i == 0)
        return (($a[$i] +
                 avgRec($a, $i +
                         1, $n)) / $n);
 
    // Compute sum
    return ($a[$i] +
            avgRec($a, $i + 1, $n));
}
 
// Function that return
// average of an array.
function average($a, $n)
{
    return avgRec($a, 0, $n);
}
 
// Driver code
$arr = array(10, 2, 3, 4,
             5, 6, 7, 8, 9);
$n = sizeof($arr);
 
echo average($arr, $n) ;
 
// This code is contributed by Anuj_67
?>

Javascript

<script>
 
// Java script  program to calculate average
// of array elements
 
// Recursively computes average of a[]
function avgRec(a, i, n)
{
     
    // Last element
    if (i == n - 1)
        return a[i];
 
    // When index is 0, divide sum computed so
    // far by n.
    if (i == 0)
        return ((a[i] + avgRec(a, i + 1, n)) / n);
 
    // Compute sum
    return (a[i] + avgRec(a, i + 1, n));
}
 
// Function that return average of an array.
function average(a, n)
{
    return avgRec(a, 0, n);
}
 
// Driver code
let arr = [ 10, 2, 3, 4, 5, 6, 7, 8, 9 ];
let n = arr.length;
 
document.write(average(arr, n));
 
// This code is contributed by sravan kumar G
 
</script>
Producción

6

Artículo relacionado: 
Promedio de un flujo de números

Este artículo es una contribución de Sahil Rajput . Si te gusta GeeksforGeeks y te gustaría contribuir, también puedes escribir un artículo usando write.geeksforgeeks.org o enviar tu artículo por correo a review-team@geeksforgeeks.org. Vea su artículo que aparece en la página principal de GeeksforGeeks y ayude a otros Geeks.
Escriba comentarios si encuentra algo incorrecto o si desea compartir más información sobre el tema tratado anteriormente.

Publicación traducida automáticamente

Artículo escrito por GeeksforGeeks-1 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *