从数组中获取值

pet*_*ete 0 c# visual-studio-2010

此代码使用户输入5个数字,存储在数组中,并计算出平均值

double average;
double variance;
int i;
int[] arr = new int[5]; // 5 size array

for (i = 0; i < 5; i++)
{
    Console.Write("\n Enter your number:\t");
    arr[i] = Convert.ToInt32(Console.ReadLine());
}

Console.WriteLine("\n");
average = arr.Sum() / 5.0;
Console.WriteLine("\n The average is {0}", average);
Console.ReadLine();
Run Code Online (Sandbox Code Playgroud)

我试图找出方差,即(数 - 平均值)*(数 - 平均值).

但是,我不确定如何从阵列中提取每个数字并执行此计算?

任何帮助非常感谢谢谢

Mar*_*tus 8

您可以获得如下标准偏差:

double average = arr.Average();
double sumOfSquaresOfDifferences = arr.Select(val => (val - average) * (val - average)).Sum();
double sd = Math.Sqrt(sumOfSquaresOfDifferences / arr.Length); 
Run Code Online (Sandbox Code Playgroud)