public Menu() { Console.WriteLine("TASK 3.3 and 3.4\n Set breakpoint in code"); Part1(); Part2(); Part3(); Part4(); Part5(); Part6(); Part7(); Part8(); Part9(); Part10(); Part11(); myHardcoreArray = new HardcoreDynamicArray <string>(); myHardcoreArray.AddRange(myArray); Part12(); Part13(); Part14(); Part15(); myCycledArray = new CycledDynamicArray <string>(); myCycledArray.AddRange(myHardcoreArray); Part16(); Console.WriteLine("finished"); }
public static void Main(string[] args) { // condition 1 DynamicArray <string> dynamicArray = new DynamicArray <string>(); Console.WriteLine($"при создании конструктора без параметров Capacity = {dynamicArray.Capacity}"); Console.WriteLine($"при создании конструктора без параметров Length = {dynamicArray.Length}"); Console.WriteLine(); // condition 2 dynamicArray = new DynamicArray <string>(5); Console.WriteLine($"при создании конструктора с одним целочисленным параметром Capacity(5) = {dynamicArray.Capacity}"); Console.WriteLine($"при создании конструктора с одним целочисленным параметром Length = {dynamicArray.Length}"); Console.WriteLine(); // condition 3 List <string> list = new List <string>(); list.Add("A"); list.Add("B"); list.Add("C"); list.Add("D"); list.Add("E"); list.Add("F"); dynamicArray = new DynamicArray <string>(list); Console.WriteLine($"при создании конструктора с коллекцией размером {list.Count} Capacity = {dynamicArray.Capacity}"); Console.WriteLine($"при создании конструктора с коллекцией размером {list.Count} Length = {dynamicArray.Length}"); ShowDynamicArray(dynamicArray); Console.WriteLine(); // condition 4 dynamicArray.Add("G"); Console.WriteLine($"при добавления элемента в конец Capacity = {dynamicArray.Capacity}"); Console.WriteLine($"при добавления элемента в конец Length = {dynamicArray.Length}"); ShowDynamicArray(dynamicArray); Console.WriteLine(); // condition 5 list = new List <string>(); list.Add("H"); list.Add("I"); list.Add("J"); list.Add("K"); list.Add("L"); list.Add("M"); dynamicArray.AddRange(list); Console.WriteLine($"при добавления коллекции размером {list.Count} в конец Capacity = {dynamicArray.Capacity}"); Console.WriteLine($"при добавления коллекции размером {list.Count} в конец Length = {dynamicArray.Length}"); ShowDynamicArray(dynamicArray); Console.WriteLine(); // condiotion 6 Console.WriteLine("попытка удаления G первый раз {0}", dynamicArray.Remove("G")); Console.WriteLine($"при удалении элемента G Capacity = {dynamicArray.Capacity}"); Console.WriteLine($"при удалении элемента G Length = {dynamicArray.Length}"); ShowDynamicArray(dynamicArray); Console.WriteLine("попытка удаления G второй раз {0}", dynamicArray.Remove("G")); Console.WriteLine(); // condition 7 dynamicArray.Insert(7, "G"); Console.WriteLine($"при добавления элемента на позицию 7 Capacity = {dynamicArray.Capacity}"); Console.WriteLine($"при добавления элемента на позицию 7 Length = {dynamicArray.Length}"); ShowDynamicArray(dynamicArray); // ArgumentOutOfRangeException // dynamicArray.Insert(14,"G"); Console.WriteLine(); // condition 11 Console.WriteLine($"Вывод нулевого элемента: {dynamicArray[0]}"); // condition 1 Console.WriteLine($"Вывод -1 элемента: {dynamicArray[-1]}"); // condition 2 dynamicArray.Capacity = 10; Console.WriteLine($"при изменении Capacity на 10 Capacity = {dynamicArray.Capacity}"); Console.WriteLine($"при изменении Capacity на 10 Length = {dynamicArray.Length}"); ShowDynamicArray(dynamicArray); Console.WriteLine(); // condition 3 Console.WriteLine("Создание Clone"); DynamicArray <string> cloneDynamicArray = (DynamicArray <string>)dynamicArray.Clone(); Console.WriteLine($"Capacity Clone = {cloneDynamicArray.Capacity}"); Console.WriteLine($"Length Clone = {cloneDynamicArray.Length}"); ShowDynamicArray(cloneDynamicArray); Console.WriteLine(); // condition 4 string[] toArray = dynamicArray.ToArray(); Console.WriteLine("ToArray:"); foreach (var item in toArray) { Console.Write($"{item} "); } Console.WriteLine(); Console.WriteLine(); CycledDynamicArray <int> cycledDynamic = new CycledDynamicArray <int>() { 1, 2, 3, 4 }; Console.WriteLine("CycledDynamicArray:"); int count = 10; foreach (var item in cycledDynamic) { Console.Write(item + " "); count--; if (count == 0) { break; } } }
public CycledIterator(CycledDynamicArray <T> parent) { this.parent = parent; position = -1; }
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); }