첨부 실행 코드는 나눔고딕코딩 폰트를 사용합니다.
728x90
반응형
728x170
using System;

#region 표준 편차 구하기 - GetStandardDeviation(valueArray, average)

/// <summary>
/// 표준 편차 구하기
/// </summary>
/// <param name="valueArray">값 배열</param>
/// <param name="average">평균</param>
/// <returns>표준 편차</returns>
public double GetStandardDeviation(double[] valueArray, double average)
{
    int valueCount = valueArray.Length;

    if(valueCount == 0)
    {
        return 0d;
    }

    double standardDeviation = 0d;
    double variance          = 0d;

    try
    {
        for(int i = 0; i < valueCount; i++)
        {
            variance += Math.Pow(valueArray[i] - average, 2);
        }

        standardDeviation = Math.Sqrt(SafeDivide(variance, valueCount));
    }
    catch(Exception)
    {
        throw;
    }

    return standardDeviation;
}

#endregion

#region 안전하게 나누기 - SafeDivide(value1, value2)

/// <summary>
/// 안전하게 나누기
/// </summary>
/// <param name="value1">값 1</param>
/// <param name="value2">값 2</param>
/// <returns>나눈 값</returns>
private double SafeDivide(double value1, double value2)
{
    double result = 0d;

    try
    {
        if((value1 == 0) || (value2 == 0))
        {
            return 0d;
        }

        result = value1 / value2;
    }
    catch
    {
    }

    return result;
}

#endregion
728x90
반응형
그리드형(광고전용)
Posted by icodebroker

댓글을 달아 주세요