이 튜토리얼에서는 그룹화된 데이터의 표준편차를 구현하는 프로그램에 대해 논의할 것입니다.
이를 위해 클래스 간격과 클래스 빈도가 제공됩니다. 우리의 임무는 그룹화된 데이터의 표준편차를 찾는 것입니다.
예시
#include <bits/stdc++.h> using namespace std; //finding mean of grouped data float calc_mean(float mid[], int freq[], int n){ float sum = 0, freqSum = 0; for (int i = 0; i < n; i++) { sum = sum + mid[i] * freq[i]; freqSum = freqSum + freq[i]; } return sum / freqSum; } //finding standard deviation of data float calc_deviation(float lower_limit[], float upper_limit[], int freq[], int n){ float mid[n], sum = 0, freqSum = 0, sd; for (int i = 0; i < n; i++) { mid[i] = (lower_limit[i] + upper_limit[i]) / 2; sum = sum + freq[i] * mid[i] * mid[i]; freqSum = freqSum + freq[i]; } sd = sqrt((sum - freqSum * calc_mean(mid, freq, n) * calc_mean(mid, freq, n)) / (freqSum - 1)); return sd; } int main(){ float lower_limit[] = { 50, 61, 71, 86, 96 }; float upper_limit[] = { 60, 70, 85, 95, 100 }; int freq[] = { 9, 7, 9, 12, 8 }; int n = sizeof(lower_limit) / sizeof(lower_limit[0]); cout << calc_deviation(lower_limit, upper_limit, freq, n) << endl; return 0; }
출력
15.757