示例#1
0
        private static float AddValue(List <float> self, float newValue, float oldAverage)
        {
            var newAverage = CalculateAverage.CalcRunningMean(oldAverage, newValue, self.Count);

            self.Add(newValue);
            return(newAverage);
        }
        private static void Menu()
        {
            while (true)
            {
                string message = "\nHello user! Welcome to the functional application!" +
                                 "\n  Enter an option below:" +
                                 "\n    0 - Ending Application" +
                                 "\n    1 - Read Files" +
                                 "\n    2 - Initialize multiplication table" +
                                 "\n    3 - Calculate averages";

                Console.WriteLine(message);
                int entry = int.Parse(Console.ReadLine());

                Console.WriteLine("=========================================");
                if (entry == READ_FILES)
                {
                    ReadFiles.UseReadFiles(1);
                }
                else if (entry == MULTIPLICATION_TABLE)
                {
                    MultiplicationTable.UseMultiplicationTable(5);
                }
                else if (entry == CALCULATE_AVERAGE)
                {
                    CalculateAverage.UseCalculateAverage(5.4, 8.2);
                }
                else
                {
                    Console.WriteLine("\nApplication ending successfully!");
                    break;
                }
            }
        }
示例#3
0
 public void CalculateAverage_FindAverage_RandomTests()
 {
     for (int now = 0; now < 25; ++now)
     {
         var array = GenerateArray(random.Next(1, 100));
         Assert.AreEqual(this.FindAverage(array), CalculateAverage.FindAverage(array));
     }
 }
示例#4
0
        public void CalculateAverage_FindAverage_ExampleTest()
        {
            double[] array = new double[] { 17, 16, 16, 16, 16, 15, 17, 17, 15, 5, 17, 17, 16 };
            Assert.AreEqual(200.0 / 13.0, CalculateAverage.FindAverage(array));

            // Should return 0 on empty array
            Assert.AreEqual(0, CalculateAverage.FindAverage(new double[] { }));
        }
示例#5
0
        public void CalculateAverage_FindAverage_EdgeTests()
        {
            var array = new double[] { 0, 0, 0, 0, 0 };

            Assert.AreEqual(0, CalculateAverage.FindAverage(array));

            array = new double[] { };
            Assert.AreEqual(0, CalculateAverage.FindAverage(array));
        }
示例#6
0
        public void Test_AverageByMedian()
        {
            double expected = 8.0;

            double actual = CalculateAverage.Calculate(values, new Median());

            Assert.AreEqual(expected, actual, 0.000001);

            actual = CalculateAverageDelegate.Calculate(values, new Median().CalculateAverage);

            Assert.AreEqual(expected, actual, 0.000001);
        }
示例#7
0
        public void Test_AverageByMean()
        {
            double expected = 8.3636363;

            double actual = CalculateAverage.Calculate(values);

            Assert.AreEqual(expected, actual, 0.000001);

            actual = CalculateAverageDelegate.Calculate(values);

            Assert.AreEqual(expected, actual, 0.000001);
        }