C++ 프로그램으로 표준 편차 계산하기

C++Beginner
지금 연습하기

소개

이 랩에서는 함수를 사용하여 일련의 숫자의 표준 편차를 계산하는 C++ 프로그램을 작성하는 방법을 배웁니다. 이 프로그램은 평균에서 제곱된 차이의 평균인 일련의 숫자의 분산을 계산하는 방법을 보여준 다음, 그 제곱근을 통해 표준 편차를 얻는 방법을 보여줍니다.

표준 편차 계산 함수 정의

먼저 float 값의 배열을 받아 해당 값의 표준 편차를 반환하는 함수를 정의하는 것으로 시작합니다.

float SD(float values[]) // 표준 편차 계산을 위한 함수
{
    float sum = 0.0, mean, sd = 0.0;

    int i;
    for(i = 0; i < 10; ++i)
    {
        sum = sum + values[i]; // 합계 계산
    }
    mean = sum/10; // 평균 계산.
    for(i = 0; i < 10; ++i)
        sd = sd + pow(values[i] - mean, 2); // 표준 편차 계산
    return sqrt(sd / 10);
}

이 함수에서는 먼저 모든 값의 합계를 계산합니다. 그런 다음 합계를 총 값의 개수로 나누어 평균 (mean) 을 구합니다. 다음으로, 각 값과 평균 간의 제곱된 차이를 합산하여 분산 (variance) 을 계산합니다. 그 후, 분산의 제곱근을 구하여 표준 편차를 계산합니다.

입력을 읽고 결과를 출력하는 main 함수 작성

다음으로, 사용자로부터 입력을 읽고, 값을 배열에 저장하고, SD 함수를 호출하여 표준 편차를 구한 다음 결과를 표시하는 main 함수를 작성합니다.

int main()
{
    int i;
    float arr[10];
    cout << "Enter 10 elements: ";
    for(i = 0; i < 10; ++i)
        cin >> arr[i];
    cout << endl << "Standard Deviation = " << SD(arr); // 함수 호출
    return 0;
}

이 함수에서는 먼저 사용자 입력을 저장하기 위해 배열 arr을 선언합니다. 그런 다음 사용자에게 한 번에 10 개의 값을 입력하라는 메시지를 표시합니다. 그런 다음 arr 배열을 사용하여 SD 함수를 호출하여 표준 편차를 구하고 콘솔에 출력합니다.

프로그램 실행

이제 터미널에서 다음 명령을 사용하여 프로그램을 컴파일하고 실행할 수 있습니다.

g++ ~/project/main.cpp -o main && ./main

이 명령은 ~/project 디렉토리의 main.cpp 파일을 컴파일한 다음 결과 실행 파일을 실행합니다.

출력 결과 검증

4 5 7 8 9 6 3 2 1 7을 입력으로 입력하고 올바른 출력을 얻고 있는지 확인해 보겠습니다.

Enter 10 elements: 4 5 7 8 9 6 3 2 1 7

Standard Deviation = 2.5219

표준 편차가 2.5219임을 알 수 있으며, 이는 문제를 손으로 풀었을 때 얻은 값과 동일합니다.

전체 코드

참고용으로 main.cpp 파일의 전체 코드는 다음과 같습니다.

#include <iostream>
#include <cmath>
using namespace std;

float SD(float values[]) // function for calculating standadr deviation
{
    float sum = 0.0, mean, sd = 0.0;

    int i;
    for(i = 0; i < 10; ++i)
    {
        sum = sum + values[i]; // calculating sum
    }
    mean = sum/10; // finding mean.
    for(i = 0; i < 10; ++i)
        sd = sd + pow(values[i] - mean, 2); // calculating standard deviation
    return sqrt(sd / 10);
}

int main()
{
    int i;
    float arr[10];
    cout << "Enter 10 elements: ";
    for(i = 0; i < 10; ++i)
        cin >> arr[i];
    cout << endl << "Standard Deviation = " << SD(arr); // calling function
    return 0;
}

요약

이 랩에서는 C++ 프로그램에서 함수를 사용하여 일련의 숫자의 표준 편차를 계산하는 방법을 배웠습니다. 평균에서 제곱된 차이의 평균인 분산 (variance) 을 계산하는 함수를 사용한 다음, 그 제곱근을 사용하여 표준 편차를 구했습니다. 또한 사용자로부터 입력을 읽고, 이를 배열에 저장한 다음, 함수를 호출하여 표준 편차를 얻는 방법도 배웠습니다. 마지막으로, 올바른 출력을 얻고 있는지 확인하기 위해 프로그램을 컴파일하고 실행했습니다.