/** * @brief Výpočet sumy druhých mocnín prvkov * * @param list Zoznam double, z ktorého vypočítať sumu druhých mocnín prvkov * @return Suma druhých mocnín */ public static double GetSumSqr(List <double> list) { int N = list.Count; double sum = 0; for (int i = 0; i < N; i++) { sum = MatLib.add(sum, MatLib.square(list[i])); } return(sum); }
public void ShouldSquare() { Assert.AreEqual(1, MatLib.square(1)); Assert.AreEqual(0, MatLib.square(0)); Assert.AreEqual(1, MatLib.square(-1)); Assert.AreEqual(10000, MatLib.square(100)); Assert.AreEqual(1.5625, MatLib.square(1.25), Accuracy); Assert.AreEqual(0.010201, MatLib.square(0.101), Accuracy); Assert.AreEqual(3, MatLib.square(1.73205080756), Accuracy); Assert.AreNotEqual(15, MatLib.square(4)); Assert.AreNotEqual(16, MatLib.square(4.1), Accuracy); }
/** * @brief Výpočet smerodajnej odchýlky * * @param list Zoznam double, z ktorého vypočítať smerodajnú odchýlku * @return Smerodajná odchýlka */ public static double GetStandartDeviation(List <double> list) { int N = list.Count; double tmp = MatLib.subtract(GetSumSqr(list), MatLib.multiply(N, MatLib.square(GetArithmeticMean(list)))); try { tmp = MatLib.divide(tmp, N - 1); } catch (DivideByZeroException e) { Console.WriteLine("{0}", e.Message); Console.WriteLine("Press any key to continue . . ."); Console.Read(); Environment.Exit(-1); } tmp = MatLib.sqrt(tmp); return(tmp); }