-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathProgram.cs
73 lines (61 loc) · 2.07 KB
/
Program.cs
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
// Класс "Книга"
public class Book
{
// Поля
public string _title;
public string _author;
public int _pages;
// Конструктор
public Book(string title, string author, int pages)
{
_title = title;
_author = author;
_pages = pages;
}
// Переопределение метода ToString()
public override string ToString()
{
return $"Автор: {_author}, Название: {_title}";
}
}
// Класс "Библиотека"
public class Library : List<Book>
{
// Метод для сортировки книг по возрастанию количества страниц
public void SortByPages()
{
this.Sort((book1, book2) => book1._pages.CompareTo(book2._pages));
}
// Метод для вывода списка книг в консоль
public void PrintBooks()
{
foreach (Book book in this)
{
Console.WriteLine(book.ToString());
}
}
}
class Program
{
static void Main(string[] args)
{
// Создание объектов книг
Book book1 = new Book("Книга 1", "Автор 1", 200);
Book book2 = new Book("Книга 2", "Автор 2", 150);
Book book3 = new Book("Книга 3", "Автор 3", 300);
Book book4 = new Book("Книга 4", "Автор 4", 100);
Book book5 = new Book("Книга 5", "Автор 5", 250);
// Создание объекта библиотеки
Library library = new Library();
// Добавление книг в библиотеку
library.Add(book1);
library.Add(book2);
library.Add(book3);
library.Add(book4);
library.Add(book5);
// Сортировка книг по возрастанию количества страниц
library.SortByPages();
// Вывод списка книг в консоль
library.PrintBooks();
}
}