//第一版參考解答 using System; namespace ConsoleApplication1 { class Program { static void Main(string[] args) { int [] s={1,2,3,4,5,6,7,8,9,10}; for (int i = 0; i < 10; i++) { Console.Write(s[i]+" "); } double avg = Mean(s); Console.Write("\n"); Console.WriteLine("mean = {0}", avg); } static double Mean(int[] x) //輸入一個陣列,回傳平均值 { double mean = 0; for (int i = 0; i < x.Length; i++) { mean += x[i]; } mean /= x.Length; return mean; } } } //第二版參考解答 using System; namespace ConsoleApplication1 { class Program { static void Main(string[] args) { int [] s={1,2,3,4,5,6,7,8,9,10}; for (int i = 0; i < 10; i++) { Console.Write(s[i]+" "); } double avg = Mean(s); double sqa = MeanSquare(s); Console.Write("\n"); Console.WriteLine("mean = {0},\tmean square = {1}", avg, sqa); } static double Mean(int[] x) //輸入一個陣列,回傳平均值 { double mean = 0; for (int i = 0; i < x.Length; i++) { mean += x[i]; } mean /= x.Length; return mean; } static double MeanSquare(int[] x) //輸入一個陣列,回傳平方的平均 { double meanSquare = 0; for (int i = 0; i < x.Length; i++) { meanSquare += Math.Pow(x[i], 2); } meanSquare /= x.Length; return meanSquare; } } } //第三版參考解答 using System; namespace ConsoleApplication1 { class Program { static void Main(string[] args) { int [] s={1,2,3,4,5,6,7,8,9,10}; for (int i = 0; i < 10; i++) { Console.Write(s[i]+" "); } double avg = Mean(s); double sqa = MeanSquare(s); double std = StdDev(s); Console.Write("\n"); Console.WriteLine("mean = {0},\tmean square = {1},\tstd = {2}", avg, sqa, std); } static double Mean(int[] x) //輸入一個陣列,回傳平均值 { double mean = 0; for (int i = 0; i < x.Length; i++) { mean += x[i]; } mean /= x.Length; return mean; } static double MeanSquare(int[] x) //輸入一個陣列,回傳平方的平均 { double meanSquare = 0; for (int i = 0; i < x.Length; i++) { meanSquare += Math.Pow(x[i], 2); } meanSquare /= x.Length; return meanSquare; } static double StdDev(int[] x) //輸入一個陣列,回傳標準差 { double std = 0; double meanSquare = 0; double mean = 0; meanSquare = MeanSquare(x); //呼叫MeanSquare()函式來計算數列平方的平均值 mean = Mean(x); //呼叫Mean()函式來計算數列的平均值 std = Math.Sqrt(meanSquare - Math.Pow(mean, 2)); return std; } } } //第四版參考解答 using System; namespace ConsoleApplication1 { class Program { static void Main(string[] args) { Random rand = new Random(); int k; int length = 100; int[] number = new int[length]; for (int i = 0; i < length; i++) { k = rand.Next() % 50 + 1; //產生1~50之間的亂數 number[i] = k; Console.Write(k + " "); } double avg = Mean(number); double sqa = MeanSquare(number); double std = StdDev(number); Console.Write("\n"); Console.WriteLine("mean = {0},\tmean square. = {1},\tStd = {2}", avg, sqa, std); } static double Mean(int[] x) //輸入一個陣列,回傳平均值 { double mean = 0; for (int i = 0; i < x.Length; i++) { mean += x[i]; } mean /= x.Length; return mean; } static double MeanSquare(int[] x) //輸入一個陣列,回傳平方的平均 { double meanSquare = 0; for (int i = 0; i < x.Length; i++) { meanSquare += Math.Pow(x[i], 2); } meanSquare /= x.Length; return meanSquare; } static double StdDev(int[] x) //輸入一個陣列,回傳標準差 { double std = 0; double meanSquare = 0; double mean = 0; meanSquare = MeanSquare(x); //呼叫MeanSquare()函式來計算數列平方的平均值 mean = Mean(x); //呼叫Mean()函式來計算數列的平均值 std = Math.Sqrt(meanSquare - Math.Pow(mean, 2)); return std; } } } }