📜  类间隔算术平均值程序

📅  最后修改于: 2021-05-04 15:20:09             🧑  作者: Mango

给定一类间隔和频率分布,任务是找到算术平均值。在频率分布的情况下,原始数据按具有相应频率的间隔排列。因此,如果我们有兴趣查找具有类间隔的数据的算术平均值,则必须知道中间变量x。可以使用间隔的中点来计算此变量。

例子:

Input : lower_limit[] = {1, 6, 11, 16, 21}
        upper_limit[] = {5, 10, 15, 20, 25}
        freq[] = {10, 20, 30, 40, 50}
Output : 16.3333

Input : lower_limit[] = {10, 20, 30, 40, 50}
        upper_limit[] = {19, 29, 39, 49, 59}
        freq[] = {15, 20, 30, 35, 40}
Output : 38.6429
C++
// CPP program to find class interval
// arithmetic mean.
#include 
using namespace std;
 
// Function to find class interval arithmetic mean.
float mean(int lower_limit[], int upper_limit[],
                              int freq[], int n)
{
    float mid[n];
    float sum = 0, freqSum = 0;
 
    // calculate sum of frequency and sum of
    // multiplication of interval mid value
    // and frequency.
    for (int i = 0; i < n; i++) {
        mid[i] = (lower_limit[i] +
                  upper_limit[i]) / 2;
        sum = sum + mid[i] * freq[i];
        freqSum = freqSum + freq[i];
    }
    return sum / freqSum;
}
 
// Driver function
int main()
{
    int lower_limit[] = { 1, 6, 11, 16, 21 };
    int upper_limit[] = { 5, 10, 15, 20, 25 };
    int freq[] = { 10, 20, 30, 40, 50 };
    int n = sizeof(freq) / sizeof(freq[0]);
    cout << mean(lower_limit, upper_limit, freq, n);
    return 0;
}


Java
// java program to find
// class interval
import java.io.*;
 
class GFG {
 
    // Function to find class
    // interval arithmetic mean.
    static float mean(int lower_limit[],
        int upper_limit[], int freq[], int n)
    {
        float mid[] = new float[n];
        float sum = 0, freqSum = 0;
     
        // calculate sum of frequency and sum of
        // multiplication of interval mid value
        // and frequency.
        for (int i = 0; i < n; i++) {
             
            mid[i] = (lower_limit[i] +
                    upper_limit[i]) / 2;
                     
            sum = sum + mid[i] * freq[i];
            freqSum = freqSum + freq[i];
        }
         
        return sum / freqSum;
    }
    // Driver function
    public static void main (String[] args) {
     
    int lower_limit[] = { 1, 6, 11, 16, 21 };
    int upper_limit[] = { 5, 10, 15, 20, 25 };
    int freq[] = { 10, 20, 30, 40, 50 };
    int n = freq.length;
     
    mean(lower_limit, upper_limit, freq, n);
        System.out.println(mean(lower_limit,
                        upper_limit, freq, n));
    }
}
 
// This code is contributed by vt_m


Python 3
# Python 3 program to find class interval
# arithmetic mean.
 
# Function to find class interval
# arithmetic mean.
def mean(lower_limit, upper_limit, freq, n):
 
    mid = [0.0] * n
    sum = 0
    freqSum = 0
 
    # calculate sum of frequency and
    # sum of multiplication of interval
    # mid value and frequency.
    for i in range( 0, n):
        mid[i] = ((lower_limit[i] +
                  upper_limit[i]) / 2)
                   
        sum = sum + mid[i] * freq[i]
        freqSum = freqSum + freq[i]
     
    return sum / freqSum
 
 
# Driver function
lower_limit = [ 1, 6, 11, 16, 21 ]
upper_limit = [ 5, 10, 15, 20, 25 ]
freq = [10, 20, 30, 40, 50]
n = len(freq)
print(round(mean(lower_limit, upper_limit,
                             freq, n), 4))
                              
# This code is contributed by
# Smitha Dinesh Semwal


C#
// C# program to find
// class interval
using System;
 
class GFG {
 
    // Function to find class
    // interval arithmetic mean.
    static float mean(int []lower_limit,
        int []upper_limit, int []freq, int n)
    {
        float []mid = new float[n];
        float sum = 0, freqSum = 0;
     
        // calculate sum of frequency and sum of
        // multiplication of interval mid value
        // and frequency.
        for (int i = 0; i < n; i++) {
             
            mid[i] = (lower_limit[i] +
                    upper_limit[i]) / 2;
                     
            sum = sum + mid[i] * freq[i];
            freqSum = freqSum + freq[i];
        }
         
        return sum / freqSum;
    }
     
    // Driver function
    public static void Main () {
     
        int []lower_limit = { 1, 6, 11, 16, 21 };
        int []upper_limit = { 5, 10, 15, 20, 25 };
        int []freq = { 10, 20, 30, 40, 50 };
        int n = freq.Length;
         
        mean(lower_limit, upper_limit, freq, n);
            Console.WriteLine(mean(lower_limit,
                            upper_limit, freq, n));
    }
}
 
// This code is contributed by vt_m


PHP


Javascript


输出:

16.3333