顺序查找最大最小值、计算平均值、数据类型转换

double calcMax(double *pdData, long lBegin, long lEnd)
{
    long   i   = 0;
    double max = pdData[lBegin];

    for (i = lBegin; i < lEnd; i++)
    {
        if (pdData[i] > max)
        {
            max = pdData[i];
        }
    }

    return max;
}


double calcMin(double *pdData, long lBegin, long lEnd)
{
    long     i = 0;
    double min = pdData[lEnd-1];

    for(i = lEnd-1; i >= lBegin; i--)
    {
        if(pdData[i] < min)
        {
            min = pdData[i];
        }
    }
    
    return min;
}

double calcMean(double *pdData, long lBegin, long lEnd)
{
    long   i   = 0;
    double dSum = 0.0;
    
    for(i = lBegin; i < lEnd; i++)
    {
        dSum += pdData[i];
    }

    dSum/=(lEnd - lBegin);
    
    return dSum;
}
DOUBLE Fixed2Float(SWORD32 fixedData, DOUBLE decimalDigits)
{
    DOUBLE floatData = (DOUBLE)fixedData / (DOUBLE)pow(2, decimalDigits);

    return floatData;
}

SWORD32 Float2Fixed(DOUBLE floatData, DOUBLE decimalDigits)
{
    SWORD32 fixedData = (SWORD32)(floatData * (DOUBLE)pow(2, decimalDigits));

    return fixedData;
}

猜你喜欢

转载自blog.csdn.net/danxibaoxxx/article/details/81259107
今日推荐