Ejemplo n.º 1
0
        /// <summary>
        /// Возвращает номер из списка человека с заданными параметрами
        /// </summary>
        /// <param name="presentPerson">Заданный человек</param>
        /// <returns>Список номеров</returns>
        public int[] GetIndex(PersonBase presentPerson)
        {
            bool indicator = false;

            int[] numbers = new int[0];
            for (int i = 0; i < _persons.Length; i++)
            {
                if (presentPerson.Equals(_persons[i]))
                {
                    int[] copyNumbers = numbers;
                    numbers = new int[copyNumbers.Length + 1];
                    for (int j = 0; j < copyNumbers.Length; j++)
                    {
                        numbers[j] = copyNumbers[j];
                    }
                    numbers[copyNumbers.Length] = i + 1;
                    indicator = true;
                }
            }

            if (indicator != true)
            {
                throw new ArgumentException("Элемент с выбранными " +
                                            "параметрами не найден");
            }
            return(numbers);
        }
Ejemplo n.º 2
0
        /// <summary>
        /// Нахождение номера удаляемого человека по заданным параметрам
        /// </summary>
        /// <param name="deletedPerson">Удаляемый человек</param>
        public void GetIndexDelete(PersonBase deletedPerson)
        {
            bool indicator = false;

            for (int i = 0; i < _persons.Length; i++)
            {
                if (deletedPerson.Equals(_persons[i]))
                {
                    DeletePersonIndex(i);
                    indicator = true;
                }
            }

            if (indicator != true)
            {
                throw new ArgumentException("Элемент с выбранными " +
                                            "параметрами не найден");
            }
        }