示例#1
0
        static void Main(string[] args)
        {
            //Инициализация массивов разными методами
            MyArray arr1 = new MyArray(8, -30, 12, MyArray.Metod.ByRandom);
            MyArray arr2 = new MyArray(@"D:\1\dataarray.txt");
            MyArray arr3 = new MyArray(5);
            MyArray arr4 = new MyArray(50, -50, 2, MyArray.Metod.ByStep);

            //Демонстрация работы класса
            Console.WriteLine($"Начальный массив сформированный из случайных чисел:\n\n{arr1.ToString()}");
            Console.WriteLine($"\nСумма элементов массива: {arr1.Sum}");

            Console.WriteLine("\nПолучение \"инверсного\" массива:\n");
            for (int i = 0; i < arr1.Length; i++)
            {
                Console.Write(" " + arr1.Inverse()[i]);
            }

            Console.Write("\n\nМассив умноженный на определенной число (в данном случае на 5):\n\n");
            for (int i = 0; i < arr1.Length; i++)
            {
                Console.Write(" " + arr1.Multi(5)[i]);
            }

            Console.WriteLine("\n\nКолличество максимальных элементов в массиве: " + arr1.MaxCount);

            arr3.ReadFromFile(@"D:\1\dataarray.txt");
            Console.WriteLine("\nМассив считанный из файла:\n\n" + arr3.ToString());

            Console.WriteLine("\n\nМассив сформированный по заданному размеру, начальному значению и шагу:\n\n" + arr4.ToString());

            arr1.WriteToFile(@"D:\1\dataarray.txt", true);

            Console.ReadLine();
        }
示例#2
0
        public MyArray CopyTo(MyArray arr)
        // Копирование из класса в класс
        {
            for (var i = 0; i < arr.Length; i++)
            {
                a[i] = arr[i];
            }

            return(new MyArray(a));
        }
示例#3
0
        static void Main()
        {
            MyArray ar = new MyArray(8);

            ar.MinMax();
            ar.Average();
            ar.Odd();

            // Delay.
            Console.ReadKey();
        }
示例#4
0
        static void Main()
        {
            MyArray ar = new MyArray(8); //Создание экземпляра класса

            ar.MinMax();                 //Вызов метода нахождения минимального и максимального значения
            ar.Average();                //Вызов метода нахождения среднего арифметического
            ar.Odd();                    //Вызов метода отображения нечетных чисел

            // Delay.
            Console.ReadKey();
        }
示例#5
0
        static void Main(string[] args)
        {
            MyArray a = new MyArray("C:\\Users\\User\\Desktop\\Homework 4\\Task2.txt");

            a.Write("C:\\Users\\User\\Desktop\\Homework 4\\Task2.txt");
            Console.WriteLine("Элементы массива: " + a.ToString());
            Console.WriteLine("Количество максимальных элементов:" + a.Max);
            Console.WriteLine("Сумма элементов массива: " + a.Summ());
            Console.WriteLine("Произведение элементов массива на число 5: " + a.Multyply());
            Console.WriteLine("Инверсия элементов массива :" + a.Inverse);


            Console.ReadLine();
        }
示例#6
0
        static void Main(string[] args)
        {
            Console.OutputEncoding = Encoding.Unicode;
            Console.InputEncoding  = Encoding.Unicode;

            Console.WriteLine("Введите значение n - количестов элементов массива:");
            int n;

            if (int.TryParse(Console.ReadLine(), out n))
            {
            }

            else
            {
                Console.WriteLine("Неверное значение n!");
            }

            double[] arr = new double[n];
            string[] str = Console.ReadLine().Split(' ');

            for (int i = 0; i < n; i++)
            {
                if (double.TryParse(str[i], out arr[i]))
                {
                }
                else
                {
                    Console.WriteLine("Неверное значение!");
                    break;
                }
            }

            MyArray solver = new MyArray();

            double productTask1 = solver.Task1(arr);

            Console.WriteLine($"Произведение элементов массива, которые расположены после наименьшего элемента: {productTask1}");

            double sumTask2 = solver.Task2(arr);

            Console.WriteLine($"Сума элементов массива, которые расположены между первым отрицательным и вторым положительным элементов: {sumTask2}");

            double sumTask3 = solver.Task3(arr);

            Console.WriteLine($"Сума элементов массива, которые расположены между первым и вторым нулевыми элементами: {sumTask3}");

            double productTask4 = solver.Task4(arr);

            Console.WriteLine($"Произведение элементов массива, которые расположены между наибольшим и наименьшим по модулую элементами: {productTask4}");
        }
示例#7
0
        private static void FileWorking()
        // Работа с файлом
        {
            var exit = false;

            path = SepoHelper.accountPath;

            do
            {
                if (!File.Exists($"{path}\\MyArray.txt"))
                {
                    try
                    {
                        var fs = File.Create($"{path}\\MyArray.txt");
                        fs.Close();

                        Console.Clear();
                        ArrWork();
                        break;
                    }
                    catch
                    {
                        errMsg("Неизвестная ошибка");
                    }
                }
                else
                {
                    try
                    {
                        b = new MyArray($"{path}\\MyArray.txt");
                        if (b.Length > 0)
                        {
                            do
                            {
                                Console.WriteLine(
                                    "Хотите загрузить данные из файла?\n1) Загрузить\n2) Продолжить без загрузки");
                                try
                                {
                                    var selLoadN = int.Parse(Console.ReadLine());
                                    if (selLoadN == 1)
                                    {
                                        try
                                        {
                                            Console.Clear();
                                            b = new MyArray($"{path}\\MyArray.txt");
                                            ArrAction();
                                            exit = true;
                                            break;
                                        }
                                        catch
                                        {
                                            bool nextRF = false;
                                            do
                                            {
                                                errMsg("Массив имеет некоректные данные.");
                                                Console.WriteLine(
                                                    "\nОчистить файл для записи по-новой?\n1) Очистить \n2) Начать заново\n");

                                                try
                                                {
                                                    var choiseRF = int.Parse(Console.ReadLine());
                                                    if (choiseRF == 1)
                                                    {
                                                        var fs = File.Create($"{path}\\MyArray.txt");
                                                        fs.Close();
                                                        nextRF = true;
                                                        exit   = true;
                                                        Console.Clear();
                                                        ArrWork();
                                                    }
                                                    else if (choiseRF == 2)
                                                    {
                                                        Console.Clear();
                                                        Task2();
                                                        nextRF = true;
                                                        exit   = true;
                                                    }
                                                }
                                                catch
                                                {
                                                    nextRF = false;
                                                }
                                            } while (!nextRF);
                                        }

                                        Console.Clear();
                                        break;
                                    }
                                    else if (selLoadN == 2)
                                    {
                                        Console.Clear();
                                        ArrWork();
                                        exit = true;
                                        break;
                                    }
                                    else
                                    {
                                        Console.Clear();
                                    }
                                }
                                catch
                                {
                                    errMsg("Ошибка, попробуйте еще раз.");
                                    break;
                                }
                            } while (true);
                        }
                        else
                        {
                            Console.Clear();
                            ArrWork();
                            exit = true;
                            break;
                        }
                    }
                    catch
                    {
                        errMsg("Ошибка, попробуйте еще раз.");
                    }
                }
            } while (!exit);
        }
示例#8
0
        private static void ArrWork()
        // Создание массива
        {
            var arrLength = 0;

            do
            {
                Console.Clear();
                Console.WriteLine("\nСоздание массива\n");
                Console.Write("\n1) Введите размер массива: ");

                try
                {
                    arrLength = int.Parse(Console.ReadLine());
                    if (arrLength > 0)
                    {
                        break;
                    }
                    else
                    {
                        Console.Clear();
                        Console.WriteLine("Размер не может быть меньше 1.");
                    }
                }
                catch
                {
                    Console.Clear();
                }
            } while (true);

            do
            {
                Console.Write("\nВведите 0 для создания массива с указанным размером (" + arrLength +
                              ").\nОн автоматически заполнится числами от 1 до 100.\nИли введите через пробел начальный элемент массива и \nзначение на которое будет увеличиваться каждое следующее значение: ");

                try
                {
                    var arrVal = Array.ConvertAll(Console.ReadLine().Split(' '), int.Parse);
                    if (arrVal.Length == 1 && arrVal[0] == 0)
                    {
                        Console.Clear();
                        b = new MyArray(arrLength);
                        ArrAction();
                        break;
                    }
                    else if (arrVal.Length == 2)
                    {
                        Console.Clear();
                        b = new MyArray(arrLength, arrVal[0], arrVal[1]);
                        ArrAction();
                        break;
                    }
                    else
                    {
                        Console.Clear();
                        errMsg("Что-то введено неверно.");
                    }
                }
                catch
                {
                    Console.Clear();
                }
            } while (true);
        }