예제 #1
0
        //3. В введенном промежутке натуральных чисел найти те, количество делителей у которых не меньше введенного значения.  Для найденных чисел вывести на экран количество делителей и все делители.
        //	Примерный вывод:
        //	Числовой промежуток: 21 .. 30
        //	Количество делителей (не менее): 5
        //	24 - 8 - 1 2 3 4 6 8 12 24
        //	28 - 6 - 1 2 4 7 14 28
        //	30 - 8 - 1 2 3 5 6 10 15 30
        static void NumberOfDividers(Homework_3 hw3, Homework_2 hw2)
        {
            int a, b, minOfDiv, divCounter;

            int[]  divArr;
            string divStr;

            Console.WriteLine("Введите промежуток натуральных чисел");
            Console.WriteLine("От: ");
            a = Convert.ToInt32(Console.ReadLine());
            Console.WriteLine("До: ");
            b = Convert.ToInt32(Console.ReadLine());
            Console.WriteLine("Количество делителей должно быть не менее:");
            minOfDiv = Convert.ToInt32(Console.ReadLine());

            while (a <= b)
            {
                divCounter = hw3.CountDividers(a);
                divArr     = hw3.NumberDividers(a, divCounter);

                if (divCounter >= minOfDiv)
                {
                    divStr = hw2.PrintArray(divArr);
                    Console.Write($"{a} - {divCounter} - {divStr} \n");
                }
                a++;
            }
        }
예제 #2
0
        //4. Найти в массиве те элементы, значение которых меньше среднего арифметического, взятого от всех элементов массива.
        static void ArithmeticalMean(Homework_2 hw2)
        {
            int length = 6;

            int[]  arr    = hw2.FillArray(length);
            string arrStr = hw2.PrintArray(arr);

            Console.WriteLine($"arr {arrStr}");

            int arithmMean = hw2.CalcArithmeticalMean(arr);

            int[]  newArr    = hw2.GetNumbLessAv(arr, arithmMean);
            string newArrStr = hw2.PrintArray(newArr);

            Console.WriteLine($"arr {newArrStr}");
        }
예제 #3
0
        static void ReverseAnArray(Homework_2 hw2)
        {
            int length = 10;

            int[]  arr, reverse;
            string arrStr, reverseArrStr;

            arr    = hw2.FillArray(length);
            arrStr = hw2.PrintArray(arr);

            reverse       = hw2.ReverseArray(arr);
            reverseArrStr = hw2.PrintArray(reverse);

            Console.WriteLine($"arr {arrStr}");
            Console.WriteLine($"reverse {reverseArrStr}");
        }
예제 #4
0
        // Поменять местами первую и вторую половину массива,
        // 1 2 3 4  => 3 4 1 2.
        // 1 2 3 4 5  =>  4 5 3 1 2
        static void SwapArr(Homework_2 hw2)
        {
            int length = 6;

            int[]  arr, swapArr;
            string arrStr, swapArrStr;

            arr    = hw2.FillArray(length);
            arrStr = hw2.PrintArray(arr);

            swapArr    = hw2.SwapArrayParts(arr);
            swapArrStr = hw2.PrintArray(swapArr);

            Console.WriteLine($"arr {arrStr}");
            Console.WriteLine($"swap {swapArrStr}");
        }
예제 #5
0
        static void ArithmeticalMean(Homework_2 hw2)
        {
            //4. Найти в массиве те элементы, значение которых меньше среднего арифметического, взятого от всех элементов массива.
            int length = 6;

            int[]  arr    = hw2.FillArray(length);
            string arrStr = hw2.PrintArray(arr);

            Console.WriteLine($"arr {arrStr}");

            int arithmMean = hw2.CalcArithmeticalMean(arr);

            int[]  newArr    = hw2.GetNumbLessAv(arr, arithmMean);
            string newArrStr = hw2.PrintArray(newArr);

            Console.WriteLine($"arr {newArrStr}");
        }
예제 #6
0
        static void SwapArr(Homework_2 hw2)
        {
            // Поменять местами первую и вторую половину массива,
            // 1 2 3 4  => 3 4 1 2.
            // 1 2 3 4 5  =>  4 5 3 1 2
            int length = 6;

            int[]  arr, swapArr;
            string arrStr, swapArrStr;

            arr    = hw2.FillArray(length);
            arrStr = hw2.PrintArray(arr);

            swapArr    = hw2.SwapArrayParts(arr);
            swapArrStr = hw2.PrintArray(swapArr);

            Console.WriteLine($"arr {arrStr}");
            Console.WriteLine($"swap {swapArrStr}");
        }
예제 #7
0
        // Задан массив из 20 элементов (рандом от -100 до 100). Найти наибольший элемент массива и его индекс
        static void MaxInArray(Homework_2 hw2)
        {
            int length = 20;

            int[]  arr      = hw2.FillArray(length);
            int[]  maxInArr = hw2.FindMaxInArray(arr);
            string arrStr   = hw2.PrintArray(arr);

            Console.WriteLine(arrStr);
            Console.WriteLine();
            Console.WriteLine($"max = {maxInArr[0]}, index = {maxInArr[1]} ");
        }
예제 #8
0
        // 5. Вывести на экран столько элементов ряда Фибоначчи, сколько указал пользователь.
        static void Fibonacci(Homework_2 hw2)
        {
            int n;

            Console.WriteLine("Задайте количество эллементов ряда");

            n = Convert.ToInt32(Console.ReadLine());
            int[]  fibArr = hw2.FibonacciOfNumber(n);
            string fibStr = hw2.PrintArray(fibArr);

            Console.WriteLine(fibStr);
        }
예제 #9
0
        static void MaxInArray(Homework_2 hw2)
        {
            // Задан массив из 20 элементов (рандом от -100 до 100). Найти наибольший элемент массива и его индекс
            int length = 20;

            int[]  arr      = hw2.FillArray(length);
            int[]  maxInArr = hw2.FindMaxInArray(arr);
            string arrStr   = hw2.PrintArray(arr);

            Console.WriteLine(arrStr);
            Console.WriteLine();
            Console.WriteLine($"max = {maxInArr[0]}, index = {maxInArr[1]} ");
        }
예제 #10
0
        static void Fibonacci(Homework_2 hw2)
        {
            // 5. Вывести на экран столько элементов ряда Фибоначчи, сколько указал пользователь.

            int n;

            Console.WriteLine("Задайте количество эллементов ряда");

            n = Convert.ToInt32(Console.ReadLine());
            int[]  fibArr = hw2.FibonacciOfNumber(n);
            string fibStr = hw2.PrintArray(fibArr);

            Console.WriteLine(fibStr);
        }
예제 #11
0
        // 5. В массиве найти сумму элементов, находящихся между минимальным и максимальным элементами.
        // Сами минимальный и максимальный элементы в сумму не включать.

        static void SumBetweenMinMax(Homework_2 hw2)
        {
            int length = 10, sum;

            int[]  arr    = hw2.FillArray(length, 0, 20);
            string arrStr = hw2.PrintArray(arr);

            Console.WriteLine($"arr {arrStr}");

            int[] maxResult = hw2.FindMaxInArray(arr);
            int[] minResult = hw2.FindMinInArray(arr);
            sum = hw2.GetSumBetweenMinMax(arr, minResult[1], maxResult[1]);

            Console.WriteLine($"max  = {maxResult[0]}, maxIndex  = {maxResult[1]}");
            Console.WriteLine($"min  = {minResult[0]}, minIndex  = {minResult[1]}");
            Console.WriteLine($"Sum = {sum}");
        }
예제 #12
0
        // 3. Найти количество элементов массива, которые больше своих левого, правого, верхнего и нижнего соседа одновременно.
        static void CountingBigNumbers(Homework_3 hw3, Homework_2 hw2)
        {
            int l = 6, bigNumberCounter;

            int[,] arr = new int[l, l];
            int[]  bigNumbers;
            string arrStr, bigNumbersStr;

            arr    = hw3.FillTwoDimensionalArrayInt(arr);
            arrStr = hw3.PrintTwoDimensionalArrayInt(arr);

            Console.Write(arrStr);

            bigNumberCounter = hw3.CountBigNumbers(arr);
            bigNumbers       = hw3.BigNumbersArr(arr, bigNumberCounter);
            bigNumbersStr    = hw2.PrintArray(bigNumbers);

            Console.WriteLine($"bigNumbers - {bigNumbersStr}");
            Console.WriteLine($"bigNumberCounter - {bigNumberCounter}");
        }
예제 #13
0
        static void SumBetweenMinMax(Homework_2 hw2)
        {
            // 5. В массиве найти сумму элементов, находящихся между минимальным и максимальным элементами.
            // Сами минимальный и максимальный элементы в сумму не включать.

            int length = 10, sum;

            int[]  arr    = hw2.FillArray(length, 0, 20);
            string arrStr = hw2.PrintArray(arr);

            Console.WriteLine($"arr {arrStr}");

            int[] maxResult = hw2.FindMaxInArray(arr);
            int[] minResult = hw2.FindMinInArray(arr);
            sum = hw2.GetSumBetweenMinMax(arr, minResult[1], maxResult[1]);

            Console.WriteLine($"max  = {maxResult[0]}, maxIndex  = {maxResult[1]}");
            Console.WriteLine($"min  = {minResult[0]}, minIndex  = {minResult[1]}");
            Console.WriteLine($"Sum = {sum}");
        }
예제 #14
0
        static void CountingBigNumbers(Homework_3 hw3, Homework_2 hw2)
        {
            //! 3. Найти количество элементов массива, которые больше своих левого, правого, верхнего и нижнего соседа одновременно.

            int l = 6, bigNumberCounter;

            int[,] arr = new int[l, l];
            int[]  bigNumbers;
            string arrStr, bigNumbersStr;

            arr    = hw3.FillTwoDimensionalArrayInt(arr);
            arrStr = hw3.PrintTwoDimensionalArrayInt(arr); // как вывести красиво ??

            Console.Write(arrStr);

            bigNumberCounter = hw3.CountBigNumbers(arr);
            bigNumbers       = hw3.BigNumbersArr(arr, bigNumberCounter);
            bigNumbersStr    = hw2.PrintArray(bigNumbers);

            Console.WriteLine($"bigNumbers - {bigNumbersStr}");
            Console.WriteLine($"bigNumberCounter - {bigNumberCounter}");
        }
예제 #15
0
        static void NumberOfDividers(Homework_3 hw3, Homework_2 hw2)
        {
            //3. В введенном промежутке натуральных чисел найти те, количество делителей у которых не меньше введенного значения.  Для найденных чисел вывести на экран количество делителей и все делители.
            //	Примерный вывод:
            //	Числовой промежуток: 21 .. 30
            //	Количество делителей (не менее): 5
            //	24 - 8 - 1 2 3 4 6 8 12 24
            //	28 - 6 - 1 2 4 7 14 28
            //	30 - 8 - 1 2 3 5 6 10 15 30

            int a, b, minOfDiv, divCounter;

            int[]  divArr;
            string divStr;

            Console.WriteLine("Введите промежуток натуральных чисел");
            Console.WriteLine("От: ");
            a = Convert.ToInt32(Console.ReadLine());
            Console.WriteLine("До: ");
            b = Convert.ToInt32(Console.ReadLine());
            Console.WriteLine("Количество делителей должно быть не менее:");
            minOfDiv = Convert.ToInt32(Console.ReadLine());

            while (a <= b)
            {
                divCounter = hw3.CountDividers(a);
                divArr     = hw3.NumberDividers(a, divCounter);

                if (divCounter >= minOfDiv)
                {
                    divStr = hw2.PrintArray(divArr);
                    Console.Write($"{a} - {divCounter} - {divStr} \n");
                }
                a++;
            }
        }