Loading...

Във форума е въведено ограничение, което позволява на потребителите единствено да разглеждат публикуваните въпроси.

shenayEs avatar shenayEs 0 Точки

Ако може малко помощ!

Някъде бъркам и пропускам нещо ако може малко помощ.

/*Нека да едадена библиотека с книги.
 * Дефинирайте класове съответно за библиотеката и книга.
 * Библиотеката трябва да съдържа име и списък от книги.
 * Книгите трябва да съдържат информацията:
 * заглавие, автор, издателство и година на издаване.
 * В класа, който описва библиотеката, добавете метод за :
 * добавяне на книга към библиотеката, търсене на книга по автор,
 * получаване на списък на всички налични книги в библиотеката, излязли от печат през дадена година;
 *получаване на списък на всички налични книги в библиотеката от даден автор;
 *получаване на списък на всички налични книги в библиотеката, издадени от дадено издателство.
  */
namespace LibraryManagement
{
    // class Book >> ID, заглавие, автор, издателство, ISDN и година на издаване
    public class Book
    {
        public int bookID;
        public string bookName;
        public string bookAuthor;
        public string bookPublisher;
        public int bookYear;
    }

    //  class library >> да съдържа име и списък от книги
    public class Library
    {
        public static string libraryName;
        static List<Book> bookList = new List<Book>();
        static Book book = new Book();

        public static void Main(string[] args)
        {
            Console.Write("Въведете има на библиотека:"); // въвеждане на има на библиотека
            libraryName = Console.ReadLine();

            Console.Write("Добре дошли е " + libraryName + "библиотека:");

            bool close = true;
            while (close)
            {
                Console.WriteLine("\nМоля изберете:\n" +
                "\n1)Добавете книга\n" +
                "\n2)Изтрийте книга\n" +
                "\n3)Търсене на книга по автор\n" +
                "\n4)Търсене на книга по ID\n" +
                "\n5)Извеждане на всички книги\n" +
                "\n6)Затваряне\n\n");
                Console.Write("Изберете опция от менюто :");

                int option = int.Parse(Console.ReadLine());

                switch (option)
                {
                    case 1:
                        AddBook();
                        break;
                    case 2:
                        RemoveBook();
                        break;
                    case 3:
                        SearchBookByAuthor();
                        break;
                    case 4:
                        ShowBookDetails();
                        break;
                    case 5:
                        DisplayAllBooks();
                        break;
                    case 6:
                        Console.WriteLine("Благодаря Ви! Довиждане:)");
                        close = false;
                        break;
                    default:
                        Console.WriteLine("\n invalid option >> Опитайте отново !!!");
                        break;
                }
            }

            Console.ReadLine();
        }

        // въвеждане на книги .....
        public static void AddBook()
        {
            Book book = new Book();

            Console.WriteLine("ID на книги:{0}", book.bookID = bookList.Count + 1);

            Console.Write("Име на книга:");
            book.bookName = Console.ReadLine();

            Console.Write("Автор на книга:");
            book.bookAuthor = Console.ReadLine();


            Console.Write("Издателство:");
            book.bookPublisher = Console.ReadLine();

            Console.Write("Година на издаване:");
            book.bookYear = int.Parse(Console.ReadLine());

            bookList.Add(book);
        }

        // изтриване
        public static void RemoveBook()
        {
            Book book = new Book();
            Console.Write("Въведете ID на книгата, която искате да изтриете : ");

            int Del = int.Parse(Console.ReadLine());

            var item = bookList.Find(x => x.bookID == Del);

            if (item != null)
            {
                bookList.Remove(item);
                Console.WriteLine("Книга с ID - {0} е изтрита", Del);
            }
            else
            {
                Console.WriteLine("Книгата не е намерена");
            }

            DisplayAllBooks();
        }

        // Търсене на книга по автор       
        {
            Book book = new Book();
            Console.Write("Търсене на книга по автор:");
            string find = Console.ReadLine();

            foreach (Book searchId in bookList)
            {
                if (searchId.bookAuthor == find)
                {
                    Console.WriteLine(
                        "Result is: \n" +
                        "Book id:{0}\n" +
                        "Book name:{1}\n" +
                        "Book author:{2}\n" +
                        "Book publisher: {3}\n" +
                        "Book year: {4}\n",
                        searchId.bookID, searchId.bookName, searchId.bookAuthor, searchId.bookPublisher, searchId.bookYear
                    );
                }
                else
                {
                    Console.WriteLine("Книгата не е намерена", find);
                }
            }
        }

        // Show book details by book id
        public static void ShowBookDetails()
        {
            Book book = new Book();
            Console.Write("Търсете книга по id :");
            int find = int.Parse(Console.ReadLine());

            foreach (Book searchId in bookList)
            {
                if (searchId.bookID == find)
                {
                    Console.WriteLine(
                        "Result is: \n" +
                        "Book id:{0}\n" +
                        "Book name:{1}\n" +
                        "Book author:{2}\n" +
                        "Book publisher: {4}\n" +
                        "Book year: {5}\n",
                        searchId.bookID, searchId.bookName, searchId.bookAuthor, searchId.bookPublisher, searchId.bookYear
                    );
                }
                else
                {
                    Console.WriteLine(" Книга с {0} не е намерена", find);
                }
            }
        }

        // Извеждане-показване на всички книги
        public static void DisplayAllBooks()
        {
            Book book = new Book();

            if (bookList.Count > 0)
            {
                Console.WriteLine("\nКниги в библиотеката:\n");

                foreach (Book searchId in bookList)
                {
                    Console.WriteLine(
                        "Book id:{0}\n" +
                        "Book name:{1}\n" +
                        "Book author:{2}\n" +
                        "Book publisher: {3}\n" +
                        "Book year: {4}\n",
                        searchId.bookID, searchId.bookName, searchId.bookAuthor, searchId.bookPublisher, searchId.bookYear
                    );
                }
            }
            else
            {
                Console.WriteLine("Няма книги в тази библиотека");
            }
        }
    }
}

Тагове:
0
C# OOP Basics
prohause avatar prohause 356 Точки

Нещо много е объркано. Класовете по никакъв начин не трябва да имат достъп до Конзолата.

Метода за добавяне на книга трябва да изглежда нещо подобно:

public void AddBook(Book book)

{

this.bookList.Add(book)

}

 

Това е и нищо повече. Същото важи и за останалите методи

0
shenayEs avatar shenayEs 0 Точки

Благодаря!

0
Можем ли да използваме бисквитки?
Ние използваме бисквитки и подобни технологии, за да предоставим нашите услуги. Можете да се съгласите с всички или част от тях.
Назад
Функционални
Използваме бисквитки и подобни технологии, за да предоставим нашите услуги. Използваме „сесийни“ бисквитки, за да Ви идентифицираме временно. Те се пазят само по време на активната употреба на услугите ни. След излизане от приложението, затваряне на браузъра или мобилното устройство, данните се трият. Използваме бисквитки, за да предоставим опцията „Запомни Ме“, която Ви позволява да използвате нашите услуги без да предоставяте потребителско име и парола. Допълнително е възможно да използваме бисквитки за да съхраняваме различни малки настройки, като избор на езика, позиции на менюта и персонализирано съдържание. Използваме бисквитки и за измерване на маркетинговите ни усилия.
Рекламни
Използваме бисквитки, за да измерваме маркетинг ефективността ни, броене на посещения, както и за проследяването дали дадено електронно писмо е било отворено.