Форум программистов, компьютерный форум, киберфорум
C# для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.80/64: Рейтинг темы: голосов - 64, средняя оценка - 4.80
xq
1 / 1 / 0
Регистрация: 14.09.2014
Сообщений: 372

Класс домашняя библиотека

29.02.2016, 22:21. Показов 13412. Ответов 2
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Можете помочь с программой? Описать класс «домашняя библиотека». Предусмотреть возможность работы с произвольным числом книг, поиска книги по какому-либо признаку (по автору, по году издания или категории), добавления книг в библиотеку, удаления книг из нее, доступа к книге по номеру.
Написать программу, демонстрирующую все разработанные элементы класса. Спасибо.
0
Лучшие ответы (1)
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
29.02.2016, 22:21
Ответы с готовыми решениями:

Описать класс «домашняя библиотека»
Здравствуйте форумчане. помогите написать программу, вот условие:Описать класс «домашняя библиотека». Предусмотреть возможность работы с...

Класс домашняя библиотека. Перегрузка операций в классах
Описать класс домашняя библиотека. Предусмотреть возможность работы с произвольным числом книг, поиска книги по какому-либо признаку,...

Перегрузка операций в классах (Описать класс домашняя библиотека)
Описать класс домашняя библиотека. Предусмотреть возмолжность работы с произвольным числом книг, поиска книги по какому-либо признаку,...

2
 Аватар для hell_awaits
12 / 12 / 11
Регистрация: 26.05.2015
Сообщений: 36
29.02.2016, 23:59
Лучший ответ Сообщение было отмечено xq как решение

Решение

Дня два назад просили сделать нечто похожее, только со списком музыки. У вас почти тоже самое, только названия полей и классов поменять. Вот ссылка на ту тему.
Кликните здесь для просмотра всего текста
C#
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
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
    class Program
    {
        static void Main()
        {
            TrackList list = new TrackList();
 
            list.Add("Master Of Puppets", "Metallica", "Master Of Puppets", @"D:\SweetMusic\ThrashMetal", TimeSpan.Parse("00:07:56"), 100, 10);
            list.Add("Leather Rebel", "Judas Priest", "Painkiller", @"D:\SweetMusic\HeavyMetal", TimeSpan.Parse("00:03:35"), 90, 5);
            list.Add("Raining blood", "Slayer", "Reign in Blood", @"D:\SweetMusic\ThrashMetal", TimeSpan.Parse("00:04:14"), 100, 8);
            list.Add("Кабы не было зимы", "Мама дяди Фёдора", "", @"D:\SweetMusic\Музыка из мультиков", TimeSpan.Parse("00:00:43"), 82, 2);
 
            list.Sort(true); // костыль, ибо устал. true = сортируем по имени, false = сортируем по альбому
 
            Console.WriteLine(list.FindBy("Slayer"));
            Console.WriteLine(list.FindBy("Борис Моисеев"));
            Console.WriteLine(list.FindBy("Reign in Blood"));
        }
    }
 
    class Track
    {
        public Track(string name, string singer, string album, string path, TimeSpan duration, int rating, int size)
        {
            Name = name;
            Singer = singer;
            Album = album;
            Path = path;
            Duration = duration;
            Rating = rating;
            Size = size;
        }
        public string Name { get; set; }
        public string Singer { get; set; }
        public string Album { get; set; }
        public string Path { get; set; }
 
        public TimeSpan Duration { get; set; }
 
        public int Rating { get; set; }
        public int Size { get; set; }
    }
 
    class TrackList
    {
        private List<Track> list;
 
        public TrackList()
        {
            list = new List<Track>();
        }
 
        public void Sort(bool sortType)
        {
            if (sortType)
            {
                var sortedByName = list.OrderBy(t => t.Name);
                SortBy(sortedByName);
            }
 
            else
            {
                var sortedByAlbum = list.OrderBy(t => t.Album);
                SortBy(sortedByAlbum);
            }
                
        }
 
        private void SortBy(IOrderedEnumerable<Track> sort)
        {
            foreach (var item in sort)
            {
                Console.WriteLine("Name: {0}\nAlbum: {1}\nSinger: {2}\nDuration: {3}\nPath: {4}\nRaiting: {5}\nSize: {6}\n",
                    item.Name, item.Album, item.Singer,
                    item.Duration, item.Path, item.Rating, item.Size);
            }
        }
 
        public string FindBy(string singerOrAlbum)
        {
            var check = list.Find(x => x.Singer.Contains(singerOrAlbum));
            if (check != null)
                return "Нашлось!";
            else
            {
                check = list.Find(x => x.Album.Contains(singerOrAlbum));
                if(check != null)
                    return "Нашлось!";;
            }
 
            return "Не нашлось :(";
        }
 
        public void Add(string name, string singer, string album, string path, TimeSpan duration, int rating, int size)
        {
            list.Add(new Track(name, singer, album, path, duration, rating, size));
        }
    }
0
38 / 38 / 52
Регистрация: 03.02.2016
Сообщений: 99
01.03.2016, 00:20
class HomeLibrary
Кликните здесь для просмотра всего текста

C#
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
 public class HomeLibrary
    {
        public int Number { get; set; }
        public string Author { get; set; }
        public int Year { get; set; }
        public string Category { get; set; }
     
        List<HomeLibrary> homeLibraryList = new List<HomeLibrary>();
 
        public void Add(HomeLibrary homeLibrary)
        {
            homeLibraryList.Add(homeLibrary);
        }
 
        public void Remove(HomeLibrary homeLibrary)
        {
            homeLibraryList.Remove(homeLibrary);
 
        }
        public override bool Equals(object obj)
        {
            if (obj == null) return false;
 
            HomeLibrary objHomeLibrary = obj as HomeLibrary;
            if (objHomeLibrary == null) 
                return false;
            return  true;
        }
 
        public override string ToString()
        {
          return  Number + " " + Author + " " + Year + " " + Category;
        }
 
        public void ShowScreen()
        {
            foreach (var VARIABLE in homeLibraryList)
            {
                Console.WriteLine(VARIABLE.ToString());
            }
            Console.WriteLine("\n");
        }
 
        public void Search(string str, int number)
        {
 
            foreach (var VARIABLE in homeLibraryList)
            {
                if (number == 1&& VARIABLE.Author==str)
                {
                    Console.WriteLine(VARIABLE.ToString());
                }
                else if (number == 2 && VARIABLE.Year == Convert.ToInt32(str))
                {
                    Console.WriteLine(VARIABLE.ToString());
                }
                else if (number == 3 && VARIABLE.Category == str)
                {
                    Console.WriteLine(VARIABLE.ToString());
                }
                else if (number == 4 && VARIABLE.Number == Convert.ToInt32(str))
                {
                    Console.WriteLine(VARIABLE.ToString());
                }
            }
          
        }
    }

static void Main(string[] args)
Кликните здесь для просмотра всего текста

C#
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
 static void Main(string[] args)
        {
            HomeLibrary homeLibrary = new HomeLibrary();
            homeLibrary.Add(new HomeLibrary { Number = 1, Author = "Ессенин", Year = 1900, Category = "Стихи" });
            homeLibrary.Add(new HomeLibrary { Number = 2, Author = "Пушкин", Year = 1910, Category = "Рассказы" });
            homeLibrary.Add(new HomeLibrary { Number = 3, Author = "Лермонтов", Year = 1920, Category = "Басни" });
            homeLibrary.Add(new HomeLibrary { Number = 4, Author = "Достоевский", Year = 1910, Category = "Стихи" });
            homeLibrary.ShowScreen();
            homeLibrary.Remove(new HomeLibrary { Number = 3, Author = "Лермонтов", Year = 1920, Category = "Басни" });
            homeLibrary.ShowScreen();
 
            Console.WriteLine("По какому критерию будем производить поиск? (По автору-1, год издания-2, по категории-3," +
                              "по номеру -4)");
            int number = int.Parse(Console.ReadLine());
 
            switch (number)
            {
                case 1: Console.WriteLine("Введите  писателя");
                    homeLibrary.Search(Console.ReadLine(),number);
                    break;
                case 2: Console.WriteLine("Введите  год издания");
                    homeLibrary.Search(Console.ReadLine(), number);
                    break;
                case 3: Console.WriteLine("Введите  категорию");
                    homeLibrary.Search(Console.ReadLine(), number);
                    break;
                case 4: Console.WriteLine("Введите  номер книги");
                    homeLibrary.Search(Console.ReadLine(), number);
                    break;
                default: Console.WriteLine("Не правильный критерий");
                    break;
            }
 
            Console.ReadLine();
        }
3
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
01.03.2016, 00:20
Помогаю со студенческими работами здесь

Описать класс домашняя библиотека, предусмотреть возможность работы с произвольным числом книг, поиск книги
Help please!!!))).Описать класс домашняя библиотека. Предусмотреть возможность работы с произвольным числом книг, поиск книги по...

Описать класс "домашняя библиотека". Редактирование, добавление и удаление книг
Описать класс «домашняя библиотека». Предусмотреть возможность работы с произвольным числом книг, добавления книг в библиотеку, удаления...

Описать класс "Домашняя библиотека"
Описать класс «Домашняя библиотека». Предусмотреть возможность работы с произвольным количеством книг, поиска книги по любому признаку (за...

Домашняя библиотека. Удаление и добавление книг
Есть уже такой вариант домашней библиотеки, но удаление работает неправильно (удаляет первую книгу в списке вместо указаной). Буду...

Абстрактный класс «Хранилище» и производный класс «Библиотека»
Помогите, пожалуйста, с задачкой: Требуется реализовать абстрактный класс “Хранилище”, содержащий список объектов хранения (объекты...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование . \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json> Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом. # Check if. . .
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так: https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347 Основана на STM32F303RBT6. На борту пять. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru