Advertisement
desislava_topuzakova

BookLibrary.cs

Jul 3rd, 2022
943
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 2.47 KB | None | 0 0
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using System.Text;
  5.  
  6. namespace Program
  7. {
  8.     public class BookLibrary
  9.     {
  10.         private string name;
  11.         private List<Book> books;
  12.  
  13.         public BookLibrary(string name)
  14.         {
  15.             Name = name;
  16.             Books = new List<Book>();
  17.         }
  18.  
  19.         public string Name
  20.         {
  21.             get
  22.             {
  23.                 return name;
  24.             }
  25.  
  26.             set
  27.             {
  28.                 name = value;
  29.             }
  30.         }
  31.  
  32.         public List<Book> Books
  33.         {
  34.             get
  35.             {
  36.                 return books;
  37.             }
  38.  
  39.             set
  40.             {
  41.                books = value;
  42.             }
  43.         }
  44.  
  45.         public void AddBook(string title, double rating)
  46.         {
  47.             Book book = new Book(title, rating);
  48.             this.books.Add(book);
  49.         }
  50.  
  51.         public double AverageRating()
  52.         {
  53.             List<double> ratings = new List<double>();
  54.             foreach (Book book in books)
  55.             {
  56.                 ratings.Add(book.Rating);
  57.             }
  58.  
  59.             return ratings.Average();
  60.         }
  61.  
  62.         public List<string> GetBooksByRating(double rating)
  63.         {
  64.             List<string> bestBooks = new List<string>();
  65.             foreach (Book book in books)
  66.             {
  67.                 if (book.Rating > rating)
  68.                 {
  69.                     bestBooks.Add(book.Title);
  70.                 }
  71.             }
  72.             return bestBooks;
  73.         }
  74.  
  75.         public List<Book> SortByTitle()
  76.         {
  77.             books = books.OrderBy(book => book.Title).ToList();
  78.             return books;
  79.         }
  80.  
  81.         public List<Book> SortByRating()
  82.         {
  83.            
  84.             books = books.OrderByDescending(book => book.Rating).ToList();
  85.             return books;
  86.         }
  87.  
  88.         public string[] ProvideInformationAboutAllBooks()
  89.         {
  90.             List<string> infoList = new List<string>();
  91.             foreach (Book book in books)
  92.             {
  93.                 infoList.Add(book.ToString());
  94.             }
  95.             return infoList.ToArray();
  96.         }
  97.  
  98.         public bool CheckBookIsInBookLibrary(string title)
  99.         {
  100.             foreach (Book book in books)
  101.             {
  102.                 if (book.Title == title)
  103.                 {
  104.                     return true;
  105.                 }
  106.             }
  107.  
  108.             return false;
  109.         }
  110.     }
  111. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement