Aucune description

AsterDk 110bc38fd2 Обновить 'README.md' il y a 1 an
WhiteBoxTest 4d2b187b03 RefactorUpdate il y a 1 an
.gitattributes 396a527cec Добавьте файлы проекта. il y a 1 an
.gitignore 396a527cec Добавьте файлы проекта. il y a 1 an
README.md 110bc38fd2 Обновить 'README.md' il y a 1 an
WhiteBoxTest.sln 396a527cec Добавьте файлы проекта. il y a 1 an
image-1.png df18d5f229 Add Pictures il y a 1 an
image-2.png df18d5f229 Add Pictures il y a 1 an
image-3.png df18d5f229 Add Pictures il y a 1 an
image-4.png c6bd85f1bc Загрузить файлы '' il y a 1 an
image-5.png df18d5f229 Add Pictures il y a 1 an
image.png df18d5f229 Add Pictures il y a 1 an

README.md

AVGBetweenZero

Наша программа была создана с целью подсчёта значения чисел, которые находятся между первым и последним нулём.

Начало работы

Для тестирования и разработки нашего приложения необходимо:

  1. Знать язык C#;
  2. Иметь на компьютере установленное приложения Visual Studio компании Microsoft;
  3. Иметь поддержку приложений на C# в Visual Studio.

Доступ к проекту вы можете получить, клонировав удалённый репозитрий в ваш Visual Studio.

Репозиторий

Необходимые условия

Для установки приложения вам понадобиться Visual Studio 2022.

Установка

Зайти на сайт Microsoft на страницу со скачиванием Visual studio 2022 и нажать на кнопку Скачать.

Страница Microsoft

Далее открыть установочный файл и начать установку.

Процесс установки

После чего дождаться установки в основном окне приложения.

Завершающий этап

После установки запустить проект, нажав на кнопку Клонирование репозитория и добавив туда ссылку на репозитрорий.

Добавить из репозитория Ввод ссылки

В самом проекте находится класс, в котором происходят основные вычисления. В методе Main основного файла происходит вызов класса и передача переменных.

  • Класс MassClass.cs

    class MassClass
    {
        private List<double> classArray;
        private int classArraySize;
        public MassClass(List<double> array, int n)
        {
            this.classArraySize = n;
            this.classArray = array;
            this.classArray = InputMass(classArraySize);
            PrintMass(classArraySize, classArray);
            Console.WriteLine("Среднее значение - " + AverageValue (classArraySize, classArray));
        }
        //Метод ввода массива
        static List<double> InputMass(int n)
        {
            double listUnit;
            List<double> array = new List<double>();
            Console.WriteLine("Заполните массив: ");
            for (int i = 0; i < n; i++)
            {
                Console.WriteLine("Введите [{0}] элемент: ", i);
                listUnit = Convert.ToDouble(Console.ReadLine());
                array.Add(listUnit);
            }
            return array;
        }
        //Метод вывода массива
        static void PrintMass(int n, List<double> array)
        {
            Console.WriteLine("Итоговый массив: ");
            for (int i = 0; i < n; ++i)
            {
                Console.Write(array[i] + " ");
            }
            Console.WriteLine("");
        }
        //Метод расчёта срденего значения среди чисел, находящихся между нулями
        static double AverageValue(int n, List<double> array)
        {
            try
            {
                int count = 0;
                double sum = 0;
                int firstIdZero = array.FindIndex(x => x == 0), lastIdzZero = array.FindLastIndex(x => x == 0);
                double avg = 0;
                if (firstIdZero == lastIdzZero)
                {
                    Console.WriteLine("В массиве присутсвует только одно нулевое значение или такое значение отсутсвует вовсе, с подобными условиями задача не решаема!");
                    return 1;
                }
                for (int i = firstIdZero + 1; i < lastIdzZero; i++)
                {
                    sum += array[i];
                    count++;
                }
                avg = sum / count;
                return avg;
            }
            catch (Exception message)
            {
                Debug.WriteLine(message.Message);
                return 1;
            }
        }
    }
    
  • Метод Main

    static void Main(string[] args)
        {
            //Конструкция исключений
            try
            {
                List<double> array = new List<double>();
                Console.WriteLine("Введите размерность массива");
                int arraySize = Convert.ToInt32(Console.ReadLine());
                //Проверка введённой размерности массива
                if (arraySize > 0)
                {
                    new MassClass(array, arraySize);
                }
                else
                {
                    Console.WriteLine("Вы ввели некорректное значение!");
                }
            }
            catch (Exception message)
            {
                Console.WriteLine(message.Message);
            }
        }
    

После запуска программы вам предложат выполнить определённые действия. По их завершению вы получите определённый результат.

Начало работы

Авторы

  • Дмитрий Кудряшов - Рефакторинг кода - AsterDK