public void DefaultConstructorTest()
        {
            DynamicArray<int> data = new DynamicArray<int>();

            Assert.AreEqual(data.Capacity, 8);
            Assert.AreEqual(data.Length, 0);
        }
Example #2
0
        static void Main(string[] args)
        {
            Console.WriteLine("Данная программа реализует динамический массив");

            DynamicArray array = new DynamicArray() {1,4,2,6,23};
            int a = 123;
            array.Add(a);
            array.Add(31);
            Console.WriteLine("Рассмотрим массив после инициализации и добавления нескольких элементов");
            array.Show();

            Console.WriteLine("Удалим элемент {0}", a);
            array.Remove(a);
            Console.WriteLine("Измененный масив");
            array.Show();

            Console.WriteLine("Добавим к нашему массиву другой массив");
            List<object> a2 = new List<object>{ 0, 3, 1, 42, 5 };
            array.AddRange(a2);
            Console.WriteLine("Измененный масив");
            array.Show();

            Console.WriteLine("Вывод 2-ого элемента массива");
            Console.WriteLine(array[2]);

            Console.WriteLine("{0}Для выхода нажмите клавишу Enter...", Environment.NewLine);
            Console.ReadLine();
        }
        public void ConstructorTest()
        {
            int n = 5;
            DynamicArray<int> data = new DynamicArray<int>(n);

            Assert.AreEqual(data.Capacity, 5);
            Assert.AreEqual(data.Length, 0);
        }
Example #4
0
 public void Add_addElem1()
 {
     DynamicArray<int> arr = new DynamicArray<int>(2);
     arr.Add(1);
     arr.Add(2);
     arr.Add(3);
     int[] array = new int[] { 1, 2, 3, };
     NUnit.Framework.Assert.AreEqual(arr, array);
 }
Example #5
0
 public void removeElem()
 {
     DynamicArray<int> arr = new DynamicArray<int>(3);
     arr.Add(2);
     arr.Add(3);
     arr.Add(4);
     arr.Remove(2);
     NUnit.Framework.Assert.AreEqual(arr[2], 4);
 }
Example #6
0
        public void insertElem()
        {
            DynamicArray<int> arr = new DynamicArray<int>(3);
            arr.Add(1);
            arr.Add(2);
            arr.Insert(1, 5);
            int[] array = new int[] { 5, 1, 2 };

            NUnit.Framework.Assert.AreEqual(arr[1], array[1]);
        }
        public void AddTest()
        {
            int n = 5;
            DynamicArray<int> data = new DynamicArray<int>(n);
            for (int i = 0; i < n; i++)
            {
                data.Add(i);
            }

            Assert.AreEqual(data.Capacity, 5);
            Assert.AreEqual(data.Length, 5);
            Assert.AreEqual(data[4], 4);
        }
        public void AddInFullListTest()
        {
            int n = 5;
            DynamicArray<int> data = new DynamicArray<int>(n);
            for (int i = 0; i < n; i++)
            {
                data.Add(i);
            }
            data.Add(15);

            Assert.AreEqual(data.Capacity, 10);
            Assert.AreEqual(data.Length, 6);
            Assert.AreEqual(data[5], 15);
        }
 public void IncorrectCapasityConstructorTest()
 {
     int n = -5;
     try
     {
         DynamicArray<int> data = new DynamicArray<int>(n);
     }
     catch (Exception e)
     {
         StringAssert.Contains(e.Message,
             "Вместимость списка должна быть натуральным числом.");
         return;
     }
     Assert.Fail("Не было ни одного исключения");
 }
Example #10
0
        static void Main(string[] args)
        {
            List <int> lost = new List <int> {
                1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16
            };

            Task3_1_2 <int> .Lost(lost);

            Console.WriteLine();
            Task3_1_2 <string> .WordFreqeuncy("Anyone who reads Old and Middle English literary texts will be familiar with the mid-brown volumes of the EETS, with the symbol of Alfred's jewel embossed on the front cover. Most of the works attributed to King Alfred or to Aelfric, along with some of those by bishop Wulfstan and much anonymous prose and verse from the pre-Conquest period, are to be found within the Society's three series; all of the surviving medieval drama, most of the Middle English romances, much religious and secular prose and verse including the English works of John Gower, Thomas Hoccleve and most of Caxton's prints all find their place in the publications. Without EETS editions, study of medieval English texts would hardly be possible.");

            Console.WriteLine("Задание DynamicArray");
            int[] s = { 0, 1, 2, 3, 4, 5, 6, 7 };
            DynamicArray <int> my = new DynamicArray <int>(s);

            Console.Write("Первоначальный массив ");
            foreach (int i in my)
            {
                Console.Write(i);
            }
            Console.WriteLine();
            Console.WriteLine("Длина массива " + my.Length);
            Console.WriteLine("Емкость массива " + my.Capacity);
            Console.WriteLine("Обращение по индексу 3, значение равно " + my[3]);
            Console.WriteLine("Обращение по индексу -3, значение равно " + my[-3]);
            my.Add(8);
            Console.Write("Массив после добавления элемента ");
            foreach (int i in my)
            {
                Console.Write(i);
            }
            Console.WriteLine();
            Console.WriteLine("Длина массива после добавления элемента " + my.Length);
            Console.WriteLine("Емкость массива после добавления элемента " + my.Capacity);
            Console.Write("Массив после удаления элемента " + my.Remove(5) + ":");
            foreach (int i in my)
            {
                Console.Write(i);
            }
            Console.WriteLine();
            Console.WriteLine("Длина массива после удаления элемента " + my.Length);
            Console.WriteLine("Емкость массива после удаления элемента " + my.Capacity);
            Console.Write("Массив после вставки элемента " + my.Insert(5, 5) + ":");
            foreach (int i in my)
            {
                Console.Write(i);
            }
            Console.WriteLine();
            Console.WriteLine("Длина массива после вставки элемента " + my.Length);
            Console.WriteLine("Емкость массива после вставки элемента " + my.Capacity);
            my.AddRange(new DynamicArray <int> {
                9, 10, 11, 12, 13, 14, 15, 16
            });
            Console.Write("Массив после добавления коллекции ");
            foreach (int i in my)
            {
                Console.Write(i);
            }
            Console.WriteLine();
            Console.WriteLine("Длина массива после добавления коллекции " + my.Length);
            Console.WriteLine("Емкость массива после добавления коллекции " + my.Capacity);
        }
        public void EnumerableTest()
        {
            int n = 5;
            DynamicArray<int> data = new DynamicArray<int>(n);
            for (int i = 0; i < n; i++)
            {
                data.Add(i);
            }
            data.GetEnumerator();

            Assert.AreEqual(data.Capacity, 5);
        }
        public void RemoveNotExistItemTest()
        {
            int n = 5;
            DynamicArray<int> data = new DynamicArray<int>(n);
            for (int i = 0; i < n; i++)
            {
                data.Add(i);
            }
            data.Remove(10);

            Assert.AreEqual(data.Length, 5);
            Assert.AreEqual(data.Remove(10), false);
        }
        public void RemoveTest()
        {
            int n = 5;
            DynamicArray<int> data = new DynamicArray<int>(n);
            for (int i = 0; i < n; i++)
            {
                data.Add(i);
            }

            Assert.AreEqual(data.Remove(3), true);
            Assert.AreEqual(data.Length, 4);
        }
Example #14
0
 public void Add_addElem()
 {
     DynamicArray<int> arr = new DynamicArray<int>(4);
     arr.Add(3);
     NUnit.Framework.Assert.AreEqual(arr[1], 3);
 }
        public void AddRangeTest()
        {
            int n = 5;
            int[] arr = new int[] { 1, 2, 3 };
            DynamicArray<int> data = new DynamicArray<int>(n);
            data.AddRange(arr);

            Assert.AreEqual(data.Capacity, 5);
            Assert.AreEqual(data.Length, 3);
            Assert.AreEqual(data[2], 3);
        }
        public void InsertTest()
        {
            DynamicArray<int> data = new DynamicArray<int>();
            for (int i = 0; i < 7; i++)
            {
                data.Add(i);
            }
            data.Insert(4, 1);

            Assert.AreEqual(data.Capacity, 8);
            Assert.AreEqual(data.Length, 8);
            Assert.AreEqual(data[1], 4);
            Assert.AreEqual(data[7], 6);

        }
Example #17
0
 public void DinamicArray_addDefaultConstructor()
 {
     DynamicArray<int> arr = new DynamicArray<int>();
     int[] array = new int[8];
     NUnit.Framework.Assert.AreEqual(arr, array);
 }
Example #18
0
 public void DinamicArray_addConstructorWith1Parametr()
 {
     DynamicArray<int> arr = new DynamicArray<int>(4);
     int[] array = new int[4];
     NUnit.Framework.Assert.AreEqual(arr, array);
 }
Example #19
0
        static void Main(string[] args)
        {
            bool quit = true;

            do
            {
                Console.WriteLine("Choose an option:");
                Console.WriteLine("1. Lost");
                Console.WriteLine("2. Word Frequency");
                Console.WriteLine("3. Dynamic array demo");
                Console.WriteLine("4. Quit");
                Console.WriteLine();
                int sw = Validate();
                Console.WriteLine();
                switch (sw)
                {
                case 1:
                    Console.WriteLine("Enter a number of humans");
                    int n = Validate();
                    Lost.LastManStanding(n);
                    CleanUp();
                    break;

                case 2:
                    Console.WriteLine("Enter a text whith whitespase or dot splitters");
                    string text = Console.ReadLine();
                    Console.WriteLine();
                    WordFrequency.FCount(text);
                    CleanUp();
                    break;

                case 3:
                    Console.WriteLine("Dynamic array demo.");
                    DynamicArray <int>       da  = new DynamicArray <int>();
                    CycledDynamicArray <int> cda = new CycledDynamicArray <int>(10);
                    for (int i = 0; i < 10; i++)
                    {
                        cda.Add(i);
                        da.Add(i);
                    }
                    Console.WriteLine();
                    Console.WriteLine("Foreach iteration on 10 items dynamic array.");
                    foreach (var i in da)
                    {
                        Console.Write(i + " ");
                    }
                    Console.WriteLine(Environment.NewLine);
                    int c = 0;
                    Console.WriteLine("Foreach iteration on 10 items cycled array, with 100 iterations limit.");
                    foreach (var i in cda)
                    {
                        Console.Write(i + " ");
                        c++;
                        if (c == 100)
                        {
                            break;
                        }
                    }
                    Console.WriteLine(Environment.NewLine);
                    Console.WriteLine($"Access by index = -33: {cda[-33]}");
                    CleanUp();
                    break;

                case 4:
                    quit = false;
                    break;
                }
            } while (quit);
        }
        public void IncorrectIndexInsertTest()
        {
            int n = 5;
            try
            {
                DynamicArray<int> data = new DynamicArray<int>(n);
                for (int i = 0; i < n - 1; i++)
                {
                    data.Add(i);
                }
                data.Insert(4, 10);
            }
            catch (Exception e)
            {
                StringAssert.Contains(e.Message, "Индекс превышает длину массива");
                return;
            }
            Assert.Fail("Не было ни одного исключения");

        }
        public void AddRangeInFullListTest()
        {
            int n = 5;
            int[] arr = new int[] { 1, 2, 3 };
            DynamicArray<int> data = new DynamicArray<int>(n);
            for (int i = 0; i < n; i++)
            {
                data.Add(i);
            }
            data.AddRange(arr);

            Assert.AreEqual(data.Capacity, 10);
            Assert.AreEqual(data.Length, 8);
            Assert.AreEqual(data[7], 3);
        }
Example #22
0
 internal Enumerator(DynamicArray <T2> dynamicArray)
 {
     this.dynamicArray = dynamicArray;
 }