/// <summary>
        /// Определяет табличный вид функции, в том числе логарифмическую таблицу.
        /// </summary>
        /// <param name="start">с какой позиции начинать</param>
        /// <param name="amount">количество ячеек; не более 16; start + amount <= 16</param>
        /// <returns>массив с ячейками</returns>
        public TableItem[] GetTableRepresentation(uint start = 0, uint amount = 16)
        {
            if (amount > 16)
            {
                throw new ArgumentException("количетсво ячеек не более 16");
            }

            if (start + amount > 16)
            {
                throw new ArgumentException("нельзя пытаться вылезти за 16");
            }

            // 16 степеней десятки у нас есть
            var answer = new TableItem[amount - start];

            // все степени и значения функции при этих аргументах добавляем в массив
            for (int i = (int)start; i < amount; i++)
            {
                answer[i - start] = new TableItem {
                    Input  = PowersOfTen[i],
                    Output = Function(PowersOfTen[i])
                }
            }
            ;

            return(answer);
        }
Ejemplo n.º 2
0
        public void TestLgOutput(double output, double expected)
        {
            TableItem = new TableItem {
                Output = output
            };
            var got = TableItem.LgOutput;

            Assert.AreEqual(expected, got);
        }
Ejemplo n.º 3
0
        public void TestLgInput(double input, double expected)
        {
            TableItem = new TableItem {
                Input = input
            };
            var got = TableItem.LgInput;

            Assert.AreEqual(expected, got);
        }