Exemple #1
0
        public static void CompareBooks(Book b1, Book b2, CompareBooks cb)
        {
            Console.WriteLine();
            switch (cb)
            {
            case Z2.CompareBooks.byCount:
                Console.WriteLine("Сравниваем книги " + b1.name + " " + b1.count + " страниц и " + b2.name + " " + b2.count + " страниц");
                if (b1.count == b2.count)
                {
                    Console.WriteLine("Количество страниц равна");
                }
                else if (b1.count > b2.count)
                {
                    Console.WriteLine("В первой книге больше страниц");
                }
                else
                {
                    Console.WriteLine("Во второй книге больше страниц");
                }
                break;

            case Z2.CompareBooks.byDate:
                Console.WriteLine("Сравниваем книги " + b1.name + " " + b1.year + " года и " + b2.name + " " + b2.year + " года");
                if (b1.year == b2.year)
                {
                    Console.WriteLine("Книги написанные в один год");
                }
                else if (b1.year > b2.year)
                {
                    Console.WriteLine("Вторая книга написанная раньше");
                }
                else
                {
                    Console.WriteLine("Первая книга написанная раньше");
                }
                break;
            }
        }
 /// <summary>
 /// Sort method with delegate parameter for sorting type
 /// </summary>
 public void Sort(CompareBooks Compare)
 {
     if (_bookList == null)
     {
         throw new ArgumentNullException(nameof(_bookList));
     }
     if (Compare == null)
     {
         throw new ArgumentNullException(nameof(Compare));
     }
     for (int i = _bookList.Count - 1; i > 0; i--)
     {
         for (int j = 0; j < i; j++)
         {
             if (Compare(_bookList[j], _bookList[j + 1]) > 0)
             {
                 Book itemToSwap = _bookList[j];
                 _bookList[j]     = _bookList[j + 1];
                 _bookList[j + 1] = itemToSwap;
             }
         }
     }
 }